将数据从一个电子表格移动到另一个电子表格时出现权限问题

Permission Issue when moving data from one spreadsheet to another

我正在尝试编写一个脚本,将一系列数据从一个电子表格移动到另一个电子表格。当我尝试打开目标电子表格时,我 运行 遇到了权限问题,我不断收到错误 "You do not have permission to call open." 我已经尝试过 open(file)、openByUrl(url) 和openById(id),所有三种方法都会引发相同的错误。

我是目标电子表格的所有者,所以我不明白为什么我没有权限。我也是脚本的所有者,我可以 read/write 访问源电子表格(尽管我不是所有者)。

感谢您的帮助。

这是我的代码:

function moveData() {
   var source = SpreadsheetApp.getActiveSheet();
   var destination = SpreadsheetApp.openById("1kfELXf9WxcZGsUO0piCjEXC_-ZR57GvbFzx1UPw89K4");

   ...
}

不幸的是this behaviour is prohibited by Google:继去年 6 月推出 Apps 脚本更新后,自定义函数只能从当前电子表格中读取数据。

他们的建议是改用 the IMPORTRANGE formula