不允许从一个 Google 电子表格访问另一个 Google 电子表格

2023-12-12

我试图通过其他电子表格中的 onEdit 事件为我的 Google 电子表格设置新值。我收到异常:不允许执行操作。我不明白我到底做错了什么。我会很高兴得到你的帮助,因为我只是在 JS + Google Docs 脚本中做第一步。

function onEdit(e) {
  if (e.value == "1")
    updateValue(e);
  else
    Browser.msgBox("Type 1 in this cell");
}

function updateValue(curRange) {
  //Get needed SpreadSheet ID and Cell Index (exp:D2) from current sheet
  var ssCur = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ssCur.getSheets()[0];

  var referenceID = sheet.getRange(curRange.range.getRow(), curRange.range.getColumn()+2).getValue();
  var cellCoordinate = sheet.getRange(curRange.range.getRow(), curRange.range.getColumn()+3).getValue();

  // Here still work good and get right values
  Browser.msgBox(referenceID); //tracing string

  try {
    //Create remote spreadsheet object - this string catching Exception
    var ss = SpreadsheetApp.openById(referenceID);
    //Create workbook (sheet)
    Browser.msgBox(ss.getName());
    var sheets = ss.getSheets();
    var sheet4Update = sheets[0].getRange(cellCoordinate).setValue('1');
  }
  catch(err) {
    Browser.msgBox(err);
  }
}

您可以修复您的代码: 1) 不要从触发器中调用 msgBox 或任何模式。破坏很多东西。 2)您无法从简单的触发器访问其他文档,而且它以用户身份运行,因此您可能没有其他权限。相反,请自行使用不同的名称(而不是 onEdit)安装触发器,并将其设置为在编辑文档时触发。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不允许从一个 Google 电子表格访问另一个 Google 电子表格 的相关文章

随机推荐

  • MYSQL - 在数据库之间复制具有特定前缀的表

    是否有一个 SQL 命令可以复制许多具有特定前缀的表 即yot 两个 MYSQL 数据库之间 DB用户可以访问这两个DB 没有任何类型的 SQL 语句使用通配符对表进行操作 您必须明确命名表 但是 您可以generate通过查询 INFOR
  • Mockito 模拟 SecurityManager 抛出异常

    我试图嘲笑SecurityManager班级 当我运行以下代码时 Mockito 抛出异常 After public void tearDown SecurityManager securityManagerMock mock Securi
  • Android MediaPlayer 是多线程的吗?

    我们可以从后台线程创建和使用 Android MediaPlayer 吗 我问是因为奇怪的是所有回调事件 例如OnError OnPrepared OnVideoSizeChanged等 在主 UI 线程中触发 即使 MediaPlayer
  • 如何将尾随返回类型与模板化类成员一起使用

    我正在尝试实现以下课程 template
  • 制作 pdf 时无法让 CSS 在 iTextSharp (5.4.3) 中工作

    我在尝试使用 iTextSharp 5 4 3 生成库将 css 文件应用到我的 pdf 时遇到问题 基本上CSS根本没有被应用 我的 vb net 文件中有以下方法 Protected Sub btnPreview Click ByVal
  • 对 virtualenv 使用单个站点包(作为例外)

    在 virtualenv 中 我怎样才能忽略no site packages单个包的规则 一些背景 我使用 virtualenv 进行部署 但自从我使用以来 这些需要更长的时间lxml 每次我重新安装新的 virtualenv 时 编译此文
  • PHP shell_exec,执行 -rwxrwxrwx shell 脚本的权限被拒绝

    我目前在运行 Apache Web 服务器的远程 CentOS 5 6 系统上通过 ssh 进行连接 我需要使用 popplerpdftohtml不幸的是 该二进制文件当前尚未安装在该计算机上 所以我下载了 poppler 包并将其构建在我
  • 如何通过 IDE(Netbeans、Eclipse)中的 optirun (Bumblebee) 运行使用图形驱动程序的构建?

    有谁知道如何通过在IDE中调用optirun bumblebee 来使eclipse或netbeans使用optimus笔记本电脑中的显卡 以便只需使用IDE中的运行按钮即可在IDE中的显卡中运行程序 以最简单的形式 我只希望 IDE 执行
  • 在 iframe 内使用 angularjs 变量

    所以我想在 iframe src 或 ng src 属性内使用变量 显然 无论我使用什么 我的变量都没有被识别 例如 其中测试只是显示为 test 另外当我使用 sce要将其用作受信任的 url 它不起作用 普通 src 也是如此 有什么我
  • NetUserAdd - 权限问题,参数不正确

    我在用着网络用户添加添加新管理员 但我收到一个我无法弄清楚的错误 失败方法返回的错误是 NET API STATUS 87 PARAM ERR 5 The NET API STATUS有一个价值87这是ERROR INVALID PARAM
  • 为什么我不能使用列表迭代器逻辑比较运算符?

    这是非常基本的 但我在这里找不到类似的问题 我正在尝试使用 list 从不同方向迭代相同的排序 STL 列表 我知道我可以将迭代器与list begin and list end 那么为什么这不起作用呢 list
  • 将项目垂直排列在行/列中,而不是水平排列

    我正在创建一个 html 页面 并希望切换到页面的滚动和浮动 所以在 body 或 div 中我想要一个项目列表 每个项目都应该位于前一个项目的下方 除非触及 div 的末尾 然后它应该位于较高的部分 依此类推 因此 如果要显示的内容太多
  • 在 PHP 会话中存储对象

    PHP 文档说 您不能在会话变量中使用引用 因为没有可行的方法来恢复对另一个变量的引用 这是否意味着我不能拥有类似的东西 session start user new User user gt name blah SESSION user
  • 透明 Bootstrap 导航栏

    我正在开发一个网站 我希望导航 仅主页 是透明的并且图像覆盖全屏 这是我到目前为止所拥有的 导航栏采用这种方式设计 因为其他页面上也是如此 这是我的 HTML div class container fluid div
  • 按方案中对的第二个元素对对列表进行排序

    我在方案中有一个程序 它给我一个对的列表 我需要按对的第二个元素对该列表进行降序排序 像这样 1 1 2 3 3 2 gt 2 3 3 2 1 1 1 1 x 3 2 1 3 1 gt x 3 1 1 2 1 3 1 1 3 3 4 2 2
  • Pyspark - df.cache().count() 需要永远运行

    我正在尝试使用我在网上阅读的计数方法强制对 PySpark 进行热切评估 spark df spark read jdbc url jdbcUrl table pushdown query properties connectionProp
  • 高效批量更新rails数据库

    我正在尝试构建一个 rake 实用程序 它会经常更新我的数据库 这是我到目前为止的代码 namespace utils do utils update ip Downloads the file frim
  • .Net“任何框架”配置

    我用 C NET 2 0 构建了一个程序 该程序在框架 3 0 和 3 5 下也能很好地工作 但如果 NET Framework 4 0是唯一安装的框架 则它不起作用 需要用户安装2 0 我在google中找到了以下配置
  • 堆栈与堆属性的 QT 特定差异?

    通常 在编写 C 代码时 我会始终将对象保留为普通属性 从而利用 RAII 然而 在 QT 中 删除对象的责任可以由析构函数承担QObject 因此 假设我们定义了一些特定的小部件 那么我们有两种可能性 1 使用QT的系统 class Wi
  • 不允许从一个 Google 电子表格访问另一个 Google 电子表格

    我试图通过其他电子表格中的 onEdit 事件为我的 Google 电子表格设置新值 我收到异常 不允许执行操作 我不明白我到底做错了什么 我会很高兴得到你的帮助 因为我只是在 JS Google Docs 脚本中做第一步 function