Google Apps脚本 - 在不允许编辑权限时无法识别Spreadsheet.setActiveSheet

时间:2017-02-20 05:59:12

标签: google-apps-script permissions

我观察当前的行为是,如果用户可以编辑权限,则工作表上的Google Apps脚本中的此onOpen触发器仅设置活动工作表。

function setAppropriateMonthWorkbookBasedOnDate() {
  currentSpreadSheet = SpreadsheetApp.getActive();

  var dateObject = new Date()
  monthName = Utilities.formatDate(dateObject, Session.getScriptTimeZone(), "MMMMM")
  targetWorksheet = currentSpreadSheet.getSheetByName(monthName)
  currentSpreadSheet.setActiveSheet(targetWorksheet);
}

function onOpen(e) {
  setAppropriateMonthWorkbookBasedOnDate();
}

我已将用户的权限更改为可以发表评论或可以查看,setActiveSheet来电似乎不再有效。

我很难在这些代码中看到任何被视为“编辑”的内容。我看到的唯一修改操作是调用setActiveSheet

现在已经在两张不同的纸张上进行了测试:1)我的生产单和2)证明它扔掉了。

关于这里可能会发生什么的想法?

1 个答案:

答案 0 :(得分:1)

触发器仅在用户具有编辑权限时运行:

  

onOpen(e)在用户打开电子表格,文档或表单时运行   他或她有权编辑。

请在此处查看详细信息:https://developers.google.com/apps-script/guides/triggers/