从自定义菜单启动脚本,询问用户问题,创建新的 sheet 而不需要权限?
Start a script from Custom Menu, ask user questions, create new sheet without needing permissions?
我有一个共享的 Google Sheet,这是一个小公司的安装计划。每个 sheet 是一个星期。我已经创建了脚本操作来执行诸如查找数据更改以及在适当情况下隐藏和取消隐藏行之类的操作。这适用于与传播sheet 共享的每个人,无需提示权限。
正在通过单击自定义菜单中的条目来执行创建新周的功能。然后提示用户输入第一周的日期和要创建的周数。经过一些用户输入错误检查后,它将隐藏模板 sheet 复制到以周日期范围命名的 sheet,更新日期输入单元格,复制 sheet 保护,然后取消隐藏新复制的sheet。这对我作为 sheet 所有者有效,但是,它正在为共享 sheet 的任何其他用户创建身份验证对话框。
我可以通过将其作为测试应用程序部署在 Google 云平台界面中来解决这个问题,但是我必须专门与用户共享它,a) 不属于 Google 工作区和 b) 可能会发生变化,因此需要持续维护。
鉴于脚本正在修改“我的”sheets 文件,我不明白为什么需要许可,我希望有办法解决这个问题。
我搜索并尝试了很多可能性,但none似乎解决了问题。
有人有专业知识吗?我是一名称职的编码员,但对 Google 应用程序还比较陌生,所以请尽可能详细。
从 Google 工作区编辑器自定义菜单调用的函数在活动用户下执行。如果函数使用任何需要授权 运行 的方法,它将显示脚本的 OAuth 同意屏幕。
不幸的是,没有办法避免这种情况。即使通过传递适当的凭据通过 UrlFechApp
调用 APIs,在这种情况下调用 Google 工作表 API,也需要活动用户的授权https://www.googleapis.com/auth/script.external_request.
使用自定义菜单打开对话框或边栏到 运行 客户端代码的选项也将要求用户授权脚本。
考虑到上述情况,如果您真的想避免要求用户授权任何内容,请忘记使用自定义菜单。您可能会考虑使用可安装触发器,即在进行编辑时使用编辑/更改可安装触发器来调用函数,例如单击复选框或从数据验证下拉列表中选择一个值。
相关
我有一个共享的 Google Sheet,这是一个小公司的安装计划。每个 sheet 是一个星期。我已经创建了脚本操作来执行诸如查找数据更改以及在适当情况下隐藏和取消隐藏行之类的操作。这适用于与传播sheet 共享的每个人,无需提示权限。
正在通过单击自定义菜单中的条目来执行创建新周的功能。然后提示用户输入第一周的日期和要创建的周数。经过一些用户输入错误检查后,它将隐藏模板 sheet 复制到以周日期范围命名的 sheet,更新日期输入单元格,复制 sheet 保护,然后取消隐藏新复制的sheet。这对我作为 sheet 所有者有效,但是,它正在为共享 sheet 的任何其他用户创建身份验证对话框。
我可以通过将其作为测试应用程序部署在 Google 云平台界面中来解决这个问题,但是我必须专门与用户共享它,a) 不属于 Google 工作区和 b) 可能会发生变化,因此需要持续维护。 鉴于脚本正在修改“我的”sheets 文件,我不明白为什么需要许可,我希望有办法解决这个问题。
我搜索并尝试了很多可能性,但none似乎解决了问题。
有人有专业知识吗?我是一名称职的编码员,但对 Google 应用程序还比较陌生,所以请尽可能详细。
从 Google 工作区编辑器自定义菜单调用的函数在活动用户下执行。如果函数使用任何需要授权 运行 的方法,它将显示脚本的 OAuth 同意屏幕。
不幸的是,没有办法避免这种情况。即使通过传递适当的凭据通过 UrlFechApp
调用 APIs,在这种情况下调用 Google 工作表 API,也需要活动用户的授权https://www.googleapis.com/auth/script.external_request.
使用自定义菜单打开对话框或边栏到 运行 客户端代码的选项也将要求用户授权脚本。
考虑到上述情况,如果您真的想避免要求用户授权任何内容,请忘记使用自定义菜单。您可能会考虑使用可安装触发器,即在进行编辑时使用编辑/更改可安装触发器来调用函数,例如单击复选框或从数据验证下拉列表中选择一个值。
相关