function onEdit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[1];
if (sheet.getActiveCell() = "E11"){
sheet.getRange('E12').activate();
sheet.getCurrentCell().setValue('FALSE');
sheet.getRange('E13').activate();
sheet.getCurrentCell().setValue('FALSE');
sheet.getRange('E14').activate();
sheet.getCurrentCell().setValue('FALSE');
}
if (sheet.getActiveCell() = "E12"){
sheet.getRange('E11').activate();
sheet.getCurrentCell().setValue('FALSE');
sheet.getRange('E13').activate();
sheet.getCurrentCell().setValue('FALSE');
sheet.getRange('E14').activate();
sheet.getCurrentCell().setValue('FALSE');
}
}
所以我想这样做,如果输入 TRUE 语句,则另一个复选框将为 FALSE,反之亦然。
GAS 官方文档包含很多有用的示例,所以当你遇到困难时请参考它。下面的例子可能对你有帮助。这是针对第 1 列中两个复选框都位于彼此正下方(第 1 行和第 2 行)的情况。
function onEdit(e){
//Checkbox coordinates.
var checkboxColumn = 1;
var checkboxRows = [1, 2];
var sheetName = "YOUR_SHEET_NAME";
//Get the edited cell value
var value = e.value;
//Get the old value
var oldValue = e.oldValue;
var editedRange = e.range;
var editedSheet = editedRange.getSheet();
if (editedSheet.getName() == sheetName && editedRange.getColumn() == checkboxColumn && checkboxRows.indexOf(editedRange.getRow()) != -1) {
//Get the row coordinate of the other checkbox
var checkboxRow = checkboxRows.filter(function(rowNum) { return rowNum != editedRange.getRow();})[0];
//set its value to the old value of the edited checkbox
var range = editedSheet.getRange(checkboxRow, checkboxColumn).setValue(oldValue);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)