I have a button that activates a macro function that saves data from Sheet1 to database. It works well on a PC. However, to use on iOS it requires a checkbox to trigger macro function. The checkbox is located in (F13).
Below is the code for the 'submitData' function.
function submitData() {
var myGooglSheet= SpreadsheetApp.getActiveSpreadsheet(); //active google sheet
var shSheet1= myGooglSheet.getSheetByName("Sheet1"); //Sheet1 worksheet
var datasheet = myGooglSheet.getSheetByName("Database"); ////Database worksheet
{
var blankRow=datasheet.getLastRow()+1; //next blank row
datasheet.getRange(blankRow, 1).setValue(shSheet1.getRange("B1").getValue());
datasheet.getRange(blankRow, 2).setValue(shSheet1.getRange("D1").getValue());
datasheet.getRange(blankRow, 3).setValue(shSheet1.getRange("F1").getValue());
datasheet.getRange(blankRow, 4).setValue(shSheet1.getRange("B3").getValue());
datasheet.getRange(blankRow, 5).setValue(shSheet1.getRange("B4").getValue());
datasheet.getRange(blankRow, 6).setValue(shSheet1.getRange("B5").getValue());
datasheet.getRange(blankRow, 7).setValue(shSheet1.getRange("B6").getValue());
datasheet.getRange(blankRow, 8).setValue(shSheet1.getRange("B8").getValue());
datasheet.getRange(blankRow, 9).setValue(shSheet1.getRange("A9").getValue());
datasheet.getRange(blankRow, 10).setValue(shSheet1.getRange("A10").getValue());
datasheet.getRange(blankRow, 11).setValue(shSheet1.getRange("B10").getValue());
datasheet.getRange(blankRow, 12).setValue(shSheet1.getRange("E3").getValue());
datasheet.getRange(blankRow, 13).setValue(shSheet1.getRange("E4").getValue());
datasheet.getRange(blankRow, 14).setValue(shSheet1.getRange("E5").getValue());
datasheet.getRange(blankRow, 15).setValue(shSheet1.getRange("E6").getValue());
datasheet.getRange(blankRow, 16).setValue(shSheet1.getRange("E7").getValue());
datasheet.getRange(blankRow, 17).setValue(shSheet1.getRange("E8").getValue());
datasheet.getRange(blankRow, 18).setValue(shSheet1.getRange("E9").getValue());
datasheet.getRange(blankRow, 19).setValue(shSheet1.getRange("E10").getValue());
datasheet.getRange(blankRow, 20).setValue(shSheet1.getRange("E11").getValue());
datasheet.getRange(blankRow, 21).setValue(shSheet1.getRange("E12").getValue());
datasheet.getRange(blankRow, 22).setValue(new Date()).setNumberFormat('yyyy-mm-dd hh:mm:ss');
;
//Clear data
shSheet1.getRange("B3").clearContent();
shSheet1.getRange("B4").clearContent();
shSheet1.getRange("B5").clearContent();
shSheet1.getRange("B6").clearContent();
shSheet1.getRange("E3").clearContent();
shSheet1.getRange("E4").clearContent();
shSheet1.getRange("E5").clearContent();
shSheet1.getRange("E6").clearContent();
shSheet1.getRange("E7").clearContent();
shSheet1.getRange("E11").clearContent();
shSheet1.getRange("E12").clearContent();
shSheet1.getRange("F13").setValue(false);
}
}
I have found this for the function of triggering a response from check box. It works on computer and IOS. 'checkbox.gs'
function onEdit(e) {
var checkBoxLocation = "F13";
var checkBoxCondition = true;
if (e.range.getA1Notation() == checkBoxLocation) {
var spreadsheet = SpreadsheetApp.getActive();
var cell = spreadsheet.getRange('Q1');
if (e.range.getValue() == checkBoxCondition) {
cell.setValue("F13 ticked");
}
else {
cell.setValue("F13 unticked");
}
}
}
How do I merge the 'checkbox' into the 'submitData' function creating a button function for PC and a checkbox function for iOS?