【发布时间】:2017-10-03 21:49:23
【问题描述】:
我正在尝试使用 Google 表格的脚本编辑器使用以下脚本为从属列表编写脚本:
function setDataValid_(range, sourceRange) {
var rule =
SpreadsheetApp.newDataValidation().requireValueInRange(sourceRange,
true).build();
range.setDataValidation(rule);
}
function onEdit(){
var pageCell = SpreadsheetApp.getActiveSheet().getActiveCell();
var pageColumn = pageCell.getColumn();
if (pageColumn == 6 && SpreadsheetApp.getActiveSheet().getName() ==
'raw_data'){
var range = SpreadsheetApp.getActiveSheet().getRange(pageCell.getRow(),
pageColumn + 2);
var sourceRange =
SpreadsheetApp.getActiveSpreadsheet().getRangeByName(pageCell.getValue());
setDataValid_(range, sourceRange);
}
}
我在这个电子表格中使用了两个不同的选项卡,“raw_data”和“Range”。我在“raw_data”的 F 列中创建了一个下拉列表,其中列出了“范围”中指定范围的值。这些值中的每一个也是该选项卡中命名范围的标题。上面的脚本假设读取 F 列中选择的值,然后在 H 列中的两列上,根据与该命名范围关联的值创建另一个下拉列表。
我一直遇到的问题是每次单击运行时都会收到错误消息“无法连接到服务器。请保存并重试”,或者如果我尝试设置项目触发器,我会收到“抱歉,出现服务器错误。请稍等,然后重试”。
我创建了新的电子表格,重新创建了命名范围,创建了新的脚本文件并尝试从另一台计算机运行脚本,但错误消息仍然存在。
我无法找到解决方案,即使我尝试使用 dubug 工具,它也会给我一条错误消息。有谁知道问题是什么或者我可以如何解决这个问题?
【问题讨论】:
-
我的公司也看到了这一点,并且在网络上搜索错误会产生足够的结果,表明这是谷歌最终需要解决的问题。希望有足够多的 G Suite 付费用户抱怨这个问题,以便修复它。
标签: google-apps-script google-sheets-api google-drive-realtime-api