我可以以某种方式强制触发 onOpen 吗?
Can I somehow force onOpen trigger?
为了让我组织的用户仅使用我制作的脚本来编辑传播的受保护部分sheet,我已经苦苦挣扎了两天。
我经历了地狱,我最终如何让它发挥作用的是,我在存储数据的地方做了一个假的隐藏 sheet,然后打开,我将该数据复制粘贴到sheet 用户看到(他们无法编辑)。如果可能的话,我想让用户体验更好一些,我希望有一种方法可以从脚本中强制触发 onOpen。我知道我可能没有做对,但我不能花更多的时间研究,所以我现在需要暴力破解。 (我试过 onChange 触发器,我试过在我的网络应用程序中设置权限,使用 doPost,我的大脑受伤了,这是我第一次编写脚本)。
TL;DR
有没有办法从脚本编辑器刷新整个选项卡?我需要在用户无需重新加载页面的情况下触发 onOpen 事件。
要“强制”onOpen 简单触发器,您有以下选项
- 调用打开
function respondToChange(e){
onOpen();
}
如果您的 onOpen 函数需要事件对象,您将不得不模拟它。
function respondToChange(e){
const event = {};
// add the required properties to event
onOpen(event);
}
- 使用
setSpreadsheetLocale
更改电子表格区域设置
相关
- How to change Google Apps Script locale?
当通过单击按钮或选择自定义菜单项或通过 onOpen(e)
或 onEdit(e)
等 simple trigger 功能 运行 时,它 运行s 在键盘 用户的帐户下 。
要在另一个有权访问受保护范围的帐户下触发 运行 的功能,您需要一个 installable trigger。
为了让我组织的用户仅使用我制作的脚本来编辑传播的受保护部分sheet,我已经苦苦挣扎了两天。
我经历了地狱,我最终如何让它发挥作用的是,我在存储数据的地方做了一个假的隐藏 sheet,然后打开,我将该数据复制粘贴到sheet 用户看到(他们无法编辑)。如果可能的话,我想让用户体验更好一些,我希望有一种方法可以从脚本中强制触发 onOpen。我知道我可能没有做对,但我不能花更多的时间研究,所以我现在需要暴力破解。 (我试过 onChange 触发器,我试过在我的网络应用程序中设置权限,使用 doPost,我的大脑受伤了,这是我第一次编写脚本)。
TL;DR 有没有办法从脚本编辑器刷新整个选项卡?我需要在用户无需重新加载页面的情况下触发 onOpen 事件。
要“强制”onOpen 简单触发器,您有以下选项
- 调用打开
如果您的 onOpen 函数需要事件对象,您将不得不模拟它。function respondToChange(e){ onOpen(); }
function respondToChange(e){ const event = {}; // add the required properties to event onOpen(event); }
- 使用
setSpreadsheetLocale
更改电子表格区域设置
相关
- How to change Google Apps Script locale?
当通过单击按钮或选择自定义菜单项或通过 onOpen(e)
或 onEdit(e)
等 simple trigger 功能 运行 时,它 运行s 在键盘 用户的帐户下 。
要在另一个有权访问受保护范围的帐户下触发 运行 的功能,您需要一个 installable trigger。