我知道checkbox是Google Sheets中的一个相对较新的功能,所以我正在尝试找到一种在单元格中自动创建复选框的方法。
到目前为止,我还没有在Google Apps脚本文档中找到关于这方面的参考。
目前我正在手动做,但任何建议使用脚本将非常感谢。
发布于 2019-04-18 19:59:29
发布于 2018-07-20 08:33:45
我不确定他们是什么时候做的,但他们现在添加了这个。
使用类DataValidationBuilder
的requireCheckbox()
方法。示例:
function setCheckboxes() {
// Assumes there's only one sheet
var sheet = SpreadsheetApp.getActiveSheet();
// This represents ALL the data
var dataRange = sheet.getDataRange();
/* Get checkbox range from sheet data range. Assumes checkboxes are on the
left-most column
*/
var dataRangeRow = dataRange.getRow();
var dataRangeColumn = dataRange.getColumn();
var dataRangeLastRow = dataRange.getLastRow();
var checkboxRange = sheet.getRange(
dataRangeRow,
dataRangeColumn,
dataRangeLastRow
);
var enforceCheckbox = SpreadsheetApp.newDataValidation();
enforceCheckbox.requireCheckbox();
enforceCheckbox.setAllowInvalid(false);
enforceCheckbox.build();
checkboxRange.setDataValidation(enforceCheckbox);
}
发布于 2018-06-11 08:40:53
function onEdit() {
var cell = SpreadsheetApp.getActive().getRange('A1');
var array =['☐','☑'];
// var rule = SpreadsheetApp.newDataValidation().requireValueInList(['☐','☑']).build();
var rule = SpreadsheetApp.newDataValidation().requireValueInList(array, false).build()
cell.setDataValidation(rule);
var valor = array[1];
// Logger.log(valor);
if(cell.getValue() == valor){
cell.offset(0, 1).setValue("Aprobado");
} else{
cell.offset(0, 1).setValue("Reprobado");
}
}
https://stackoverflow.com/questions/50466080
复制相似问题