Google表格,运行所有者

时间:2016-02-05 01:51:56

标签: javascript triggers google-sheets

好的,我是SO的新手,而且JS和Sheets也是相当新的。我正在写一张工作表,它有3个班次,每页有4页,每班有4页。除了换档时间AM,PM和NT之外,每个换档的每个相应的纸张是相同的 我不得不面对一些胖胖的人,我认为最好保护可以填写的床单和开放范围。在启动时只有头版显示。我提供了一个带有开始和结束班次选项的菜单。运行开始班次并显示相应的班次页面,然后运行结束班次并隐藏它们 问题是我没有运行这个show / hide,因为工作表也不受用户保护。是否有可能让一部分JS以所有者权限运行,无论是谁通过菜单调用它? 它可能来自可安装的触发器,但我还没有找到菜单项的方式。

1 个答案:

答案 0 :(得分:1)

我尝试创建一个更改单元格值的菜单项。不幸的是,它不会触发onEdit事件处理程序。所以,我担心你可以从菜单项中做到这一点。解决方法是将验证规则添加到单元格以创建下拉菜单。

对那些对步骤感兴趣的人:

首先,工作流程:

  • 电子表格有一个名为“Shift”的单元格
  • 用户可以将值更改为“开始”,“结束”或“”
  • 当“Shift”的值更改
  • 时,设置适当的protection

以下是步骤:

  1. 创建一个函数,比如unprotect(),它检查“Shift”是否为活动单元格并设置适当的保护
  2. 在项目脚本编辑器中,转到资源> 当前项目的触发器
  3. 创建以下规则:在电子表格中运行 unprotect 编辑
  4. 由于unprotect()installed trigger,因此它将以所有者权限运行。