我有一个包含这个简单脚本的电子表格:
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [ {name: "Create Mailing List", functionName: "createMail"}];
ss.addMenu("ROMEO", menuEntries);
}
function createMail(){
var ss = SpreadsheetApp.getActiveSheet();
var rng = ss.getRange(2, 3, 100).getValues();
var arr = new Array();
for(var i=0; i<rng.length; i++) {
var email = rng[i][0];
if (email.length == 0) break;
arr[i] = email;
}
ss.getRange(2,5).setValue(arr.join(",")).activate();
}
我已与 3 位拥有“可以编辑”权限的用户共享电子表格。两个用户可以通过单击添加的菜单项来执行 createMail 功能。第三个用户可以看到添加的菜单项,但是当他单击它时,他收到“您没有执行该操作的授权”。
关于第三个用户的一些细节:
- 他使用 yahoo.com 电子邮件地址登录。其他人都使用 gmail.com 地址。
- 他在 Windows 8 上使用 IE。其他的在 Win 7 或更低版本上。
感谢您对此的任何帮助。