尝试使用 getRange 时出现类型错误

2024-01-08

NOTE: This is a proposal of canonical Q/A. Please discuss it on Meta https://meta.stackoverflow.com/q/420764/1595451

作为新的 Google Apps 脚本用户,我正在努力解决如何修复此错误

使用默认运行时时会发生这种情况

类型错误:无法读取 null 的属性“getRange”

使用旧的运行时时会发生这种情况

类型错误:无法调用 null 的方法“getRange”。

有界项目

function myFunction(){
  const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  const sheet = spreadsheet.getSheetByName('my sheet');
  sheet.getRange('A1');
}

独立项目

function myFunction(){
  const spreadsheet = SpreadsheetApp.openByUrl('put_here_a_spreadsheet_url');
  const sheet = spreadsheet.getSheetByName('my sheet');
  sheet.getRange('A1');
}

Using getActiveSpredsheet()并直接从spreadsheet多变的

function myFunction(){
  const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  spreadsheet.getRange('A1');
}

发生错误的原因是电子表格没有名为的工作表my sheet。请记住,getSheetByName参数应与工作表名称完全相同:

  • 字符数相同
  • 相同的大小写(大写/小写)
  • 这些字符不仅应该看起来相同,而且它们应该是相同的,即一个空间看起来与人眼相似,是一个不间断的空间,但对于计算机来说它们并不相同。

您可以尝试在 Google 表格用户界面和 Google Apps 脚本编辑器上再次输入工作表名称,或者从一个位置复制名称并将其粘贴到另一位置。

注意:您可以使用变量名称或将工作表名称直接放在括号内。如果您打算将工作表名称放在括号内,则应将其括在'(撇号/直单引号),"(直双引号)或`(重音/反引号)。

使用时也可能会出现同样的错误getActiveSpreadsheet() or getActiveSheet()没有活动电子表格或活动工作表 分别。在独立项目中使用这些方法时通常会发生这种情况。在这些情况下,首先您必须使用以下 SpreadsheetApp 方法之一打开电子表格open(file), openById(id), openByUrl(url),那么你可能会使用.activate() before getActiveSpreadsheet() / getActiveSheet()方法。

资源

  • 处理文本——JavaScript 中的字符串 https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/Strings

相关(从最旧到最新)

  • JDBC 从数据库读取...类型错误:无法调用 null 的方法“getRange”。 (9号线) https://stackoverflow.com/q/13002218/
  • 无法让 Google 脚本运行 https://stackoverflow.com/q/22367010/
  • 类型错误:无法调用 null 的方法“getRange”。 (第 20 行,文件“代码”) https://stackoverflow.com/q/52357590/
  • 谷歌表格的保护脚本出现问题 - 无法读取未定义的属性“getRange” https://stackoverflow.com/q/62112801/
  • TypeError:无法读取 Google Sheet 脚本中 null 的属性“getRange”(第 6 行,文件“Code”) https://stackoverflow.com/q/62828787/
  • 类型错误:无法读取 null 属性“getRange”(第 14 行,文件“Code”) https://stackoverflow.com/q/62887346/
  • 类型错误:无法读取 null deleteRows 的属性“getRange” https://stackoverflow.com/q/67228069/
  • 谷歌表格的保护脚本出现问题 - 无法读取未定义的属性“getRange” https://stackoverflow.com/q/62112801/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试使用 getRange 时出现类型错误 的相关文章

随机推荐

  • 使用字典中的值替换列中的值

    import pandas as pd df pd DataFrame Data Hey this is 123456 Jonny B Good This is Jonny B Good at 511 233 1137 Wow that i
  • Google Play 服务已过时。需要 7571000 但找到 6774470

    我正在尝试将 google play API 添加到我的 Android 游戏中 并且按照他们网站上的说明进行操作 我在模拟器运行时遇到这个错误 试图解决它 在我的手机上 应用程序崩溃了 在清单中
  • 为什么我的异步函数返回空数组?

    我试图通过将用户的匹配项推入一个数组并返回该数组来获取用户的匹配项 以便我的路由器可以将数据发送到前端 但我的异步函数有一个问题 我只有一个空数组 我尝试设置一些断点 我注意到我的路由器在我的服务将数据推送到数组之前发送数据 这是我的路由器
  • Django 1.4 在开发服务器上提供 MEDIA_URL 和 STATIC_URL 文件

    刚刚升级到 Django 1 4 并且在开发服务器上新的 改进 的静态和媒体文件服务方面遇到了严重问题 我喜欢 Django 但到底为什么他们用 STATIC URL STATIC ROOT STATICFILES DIR 使这些文件的服务
  • 使用命令行从谷歌下载图像[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想用命令行下载谷歌给我的第n张图像 即像使用命令一样wget 搜索图像 something 我只是去页面https www google
  • const 中 u32::BITS 的替代方案是什么?

    我有一些代码可以做到这一点 const MY CRAZY CONSTANT u32 1 lt lt u32 BITS 1 我尝试使用 Rust nightly 2016 03 29 编译它 但失败并显示以下消息 error no assoc
  • 批处理文件和 DEL errorlevel 0 问题

    该批处理必须从特定位置删除文件和目录 并将成功或 stdout stderr 消息输出到新的 txt 文件 我已经创建了脚本的大部分内容 并且它的执行完全符合预期 除非删除成功 否则它会前进到下一行 而不是在日志上回显 成功 消息 echo
  • java 8流用于根据特定字段对对象列表进行排序

    我有一个根据时间戳对对象进行排序的场景 课程如下 class Employee private String name private List
  • 具有不同参数的重载方法的方法引用无效

    当尝试编译表达式时Comparator comparing String toLowerCase Java 编译器返回错误 请参阅以下问题以获取更多信息 为什么 Comparator comparing 不适用于 String toLowe
  • 无法解析基于模板的标识符“get”。网豆8.1

    我的问题是 我收到了帖子主题中出现的警告 真是令人沮丧 这自动完成不适用于该代码 除此之外还会出现警告 标准设定为C 14 例如 Boxes 2 get gt setPosition Boxes 2 get gt getPosition v
  • 正则表达式仅使用egrep捕获整个单词

    我正在使用egrep 来查看perforce NAS 中的脚本 我试图找到我们使用 RCP 和 RSH 的地方 我遇到的问题是 1 我在 REGEX 上很糟糕 2 我正在捡起我不感兴趣的垃圾 例如 如果一个文件包含单词 strcpy 它会捡
  • 错误1001。初始化安装时发生异常

    我在尝试卸载时看到以下错误 程序文件中没有WRT文件夹 如何卸载该软件 注意 我已从程序文件中删除了软件文件夹 错误信息 System IO FileNotFoundException could not load file or asse
  • 如何检查 Java 8 Streams 中是否存在重复项?

    在 java 8 中 检查列表是否包含重复项的最佳方法是什么 我的想法是这样的 list size list stream distinct count 这是最好的方法吗 您的代码需要迭代所有元素 如果你想确保没有重复的简单方法 例如 pu
  • 如何为 HTML div 标签设置边框

    我正在尝试在 HTML 中定义 div 标签周围的边框 在某些浏览器中 边框不会出现 这是我的 HTML 代码 div style border thin div
  • 计算嵌套对象中的键数

    我正在尝试统计嵌套 JS 对象中的键 我能够到达第一层 但我有点困惑如何让它深入嵌套对象并返回计数 var properties prop1 prop2 prop3 prop4 subProp1 subProp2 subProp3 subS
  • 设置 eclipse java SE-1.7

    我想开始学习java 但是Eclipse给我带来了一些麻烦 首先 我是一个Java初学者 对它知之甚少甚至一无所知 我想使用 JavaSe 1 7 除了使用最新版本之外 我没有明确的理由使用它 下载 Eclipse 适用于 Java 开发人
  • 为什么非成员 static constexpr 变量不是隐式内联的?

    在 C 17 中 我们得到了内联变量 并且我假设全局 constexpr 变量是隐式内联的 但显然这只适用于静态member变量 这背后的逻辑 技术限制是什么 source 声明为 constexpr 的静态成员变量 但不是名称空间范围变量
  • 当底层模型更改时,QT QmlMap PolyLine 未正确更新

    我正在尝试将多个地理坐标与地图中的折线连接起来 坐标存储在模型 QAbstractListModel 类中 我可以在其中修改 删除和添加 C 中的坐标 简单地显示每个坐标的标记就可以了 但是当我将它们与折线连接并从模型中删除一些现有坐标时
  • 将 Base64 字符串加载到画布时遇到问题

    我正在尝试将 Base64 字符串从数据库加载到画布 我通过执行相反的方法获得了这个字符串 在画布上绘制后将其保存到我的数据库中 所以 现在我想将其加载回另一个画布上 我已经尝试过在网络和 StackOverflow 上其他地方找到的这段代
  • 尝试使用 getRange 时出现类型错误

    NOTE This is a proposal of canonical Q A Please discuss it on Meta https meta stackoverflow com q 420764 1595451 作为新的 Go