my script runs perfectly in the webbrowser version. I added a Button as a drawing and asinged the function name of the script to it. Since it should be used on an Ipad, the buttons do not work.
How can I manage to run the script, maybe by using a check box?
I tried a lot of available solutions but non of it worked.
Thanks a lot for some help.
Non of the following works:
function onEdit(e) {
var ss = SpreadsheetApp.getActiveSheet();
var r = ss.getActiveCell();
if (r.getRow()== 7 && r.getColumn()== 13 && ss.getName()=='B1_P1-Prozessfragen') {
(ExportData1a());
}
};
//https://code.luasoftware.com/tutorials/google-apps-script/google-apps-script-click-event-trigger-on-mobile
function onEdit(e) {
const sss = SpreadsheetApp.openById("1N_tIta29305JUUxaY7PbCdnbQOfNxOXpJMt3WXINDcU");
const ssh = sss.getSheetByName("B1_P1-Prozessfragen");
var value = ssh.getRange('M7');
if (e.range.getA1Notation() = value) {
Logger.log(e.value);
if (e.value == 'Exportieren') {
Logger.log('onClick');
ExportData1a();
e.range.clear(); // optional
}
}
}
This is the script that needs to be run:
function ExportData1a() {
// Safety check if a box is checked.
var result = SpreadsheetApp.getUi().alert("ACHTUNG: Wenn die Daten exportiert werden, werden die Kommentarfelder geleert. KVP-Tickets erstellt? \n \n NEIN --> Abbrechen und KVP Tickets erstellen \n \n JA --> Bereit für den Export - Sicherheitscheck: Fertig-Haken gesetzt?", SpreadsheetApp.getUi().ButtonSet.OK_CANCEL); {
if (result === SpreadsheetApp.getUi().Button.OK) {
const ss = SpreadsheetApp.openById("1N_tIta29305JUUxaY7PbCdnbQOfNxOXpJMt3WXINDcU").getSheetByName("B1_P1-Prozessfragen");
const cell = ss.getRange("CheckButton1").getValue();
if (cell === '') {
return;
}
else {(PB1a()) }
}
else { return; }
}
// Reseting a checkbox to empty.
const sss = SpreadsheetApp.openById("1N_tIta29305JUUxaY7PbCdnbQOfNxOXpJMt3WXINDcU");
const ssh = sss.getSheetByName("B1_P1-Prozessfragen");
var dataRange = ssh.getRange('CheckBox1');
var availableRange = ssh.getRange ('AvailableBox');
var values = dataRange.getValues();
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (values[i][j] == true) {
values[i][j] = false;
}
}
}
dataRange.setValues(values);
availableRange.setValues(values);
//Reseting some checkboxes an cells with comments.
var commentRange = ssh.getRange('ResetComment1');
var dataRange = ssh.getRange('EmptyBoxes1');
var values = dataRange.getValues();
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (values[i][j] == true) {
values[i][j] = false;
}
}
}
commentRange.clearContent();
dataRange.setValues(values);
}
function PB1a() {
//This is the function to actually to an export of selected data.
const sss = SpreadsheetApp.openById("1N_tIta29305JUUxaY7PbCdnbQOfNxOXpJMt3WXINDcU");
const ssh = sss.getSheetByName("B1_P1-Prozessfragen");
const tss = SpreadsheetApp.openById("1oaEqcdpzXUUBpmPFAMX8Jr0hRNfbRxr9GXGDnp5rLII");
const tsh = tss.getSheetByName("PB");
const nsh = ssh.copyTo(tss)
var firstEmtyRow = tsh.getLastRow() + 1;
var timestamp = new Date();
tsh.appendRow([timestamp]);
nsh.getRange("CopytoMasterdata1").copyTo(tsh.getRange("B" + firstEmtyRow), { contentsOnly: true });
tss.deleteSheet(nsh);
}