【发布时间】:2018-07-29 18:37:28
【问题描述】:
我正在尝试使用以下公式:
function setDataValid(range, sourceRange) {
var rule = SpreadsheetApp.newDataValidation().requireValueInRange(sourceRange, true).build();
range.setDataValidation(rule);
}
function onEdit() {
var aCell = SpreadsheetApp.getActiveSheet().getActiveCell();
var aColumn = aCell.getColumn();
if (aColumn == 2 && SpreadsheetApp.getActiveSheet().getName() == 'Local' ) {
var range = SpreadsheetApp.getActiveSheet().getRange(aCell.getRow(), aColumn + 1);
var sourceRange = SpreadsheetApp.getActiveSpreadsheet().getRangeByName(aCell.getValue());
setDataValid(range, sourceRange)
}
}
调试 onEdit() 时显示 setDataValid(range, sourceRange) 中的 sourceRange 为空。由于范围在我的工作表“本地”中,我试图将 getActiveSpreadsheet() 更改为按名称获取电子表格。谁能帮忙?
【问题讨论】:
标签: google-apps-script google-sheets