0

我有一个包含这个简单脚本的电子表格:

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 功能。第三个用户可以看到添加的菜单项,但是当他单击它时,他收到“您没有执行该操作的授权”。

关于第三个用户的一些细节:

  1. 他使用 yahoo.com 电子邮件地址登录。其他人都使用 gmail.com 地址。
  2. 他在 Windows 8 上使用 IE。其他的在 Win 7 或更低版本上。

感谢您对此的任何帮助。

4

2 回答 2

0

yahoo 用户实际上没有 google 帐户,但您需要一个来执行应用程序脚本功能。通过与他共享文档,谷歌只是“通过 url”共享它,而不是真正与他共享,直到他创建一个谷歌帐户。

于 2013-11-13T22:47:34.083 回答
0

三种可能的解决方案:

  1. 第三个用户在访问电子表格时需要登录 Google 帐户。
  2. 公开您的电子表格(向全世界公开- 将被搜索引擎索引)。
  3. 任何拥有直接链接的人都可以编辑您的电子表格(这是“共享”菜单中的一个选项)。
于 2013-11-14T23:41:29.197 回答