首先,我是 Google 脚本的新手,但有丰富的 VBA 编码经验。 我已经开始编写一个从源电子表格运行的脚本,最终将:
我尝试使用许多贡献者提供的各种不同的编码,但都失败了。看来我的主要问题是权限,我不理解并且无法找到任何解决方法
最新的错误是: “您无权调用 SpreadsheetApp.create。所需权限:https://www.googleapis.com/auth/spreadsheets”
这是由第一行代码触发的:
var crNew = SpreadsheetApp.create("MynewWorksheetName");
var ssNew = SpreadsheetApp.openByUrl(crNew.getUrl());
ssNew.getSheets()[0].setName("newname");
我看到其他人也遇到过类似的缺乏权限的问题。提到了自定义函数和云脚本授权,但似乎没有任何有效的简单英语解决方案。
我也不想使用外部“独立”脚本(整个脚本需要包含在单个电子表格中)。
有人可以帮忙吗?
编者注:以下引用来自OP评论:
我打算让用户从源电子表格中的按钮运行脚本。我不确定你所说的“谁在运行你的流程?”是什么意思
当通过单击用作按钮的网格上的图像来运行脚本时,将使用授予单击该按钮的用户的授权来运行基本脚本。
通过使用“基本”脚本,如果用户有权向其中添加文件,则可能会在“我的云端硬盘”或共享云端硬盘上创建该文件。如果您需要保留当前的用户界面设计,您可能必须使用服务帐户并授予设置它以获得域范围的权限委派。为此,您需要 Google Workspace 管理员权限。