You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets调用ImportJSON导入加密货币数据报url无值及#NAME?错误求解

问题解决步骤

1. 解决表格公式返回#NAME?报错

该报错的核心原因是Google Sheets无法识别ImportJSON自定义函数,按以下顺序排查:

  • 确认脚本绑定关系正确:从当前使用的表格顶部导航栏点击「扩展程序 > Apps Script」进入脚本编辑页,将ImportJSON相关代码粘贴到该项目中,保存时设置任意合法的项目名称即可
  • 修正函数调用写法:脚本中定义的函数名为ImportJSON(首字母大写),将表格中的公式修改为=ImportJSON("https://api.coingecko.com/api/v3/coins/markets?vs_currency=eur&ids=bitcoin")
  • 完成授权并刷新页面:首次使用自定义函数时会弹出授权提示,按指引完成授权后,刷新整个Google Sheets页面再重新调用公式即可。

2. 解决Apps Script中Exception: Attribute provided with no value: url报错

该报错由两个常见触发原因导致,对应修复方案如下:

  • 不要直接在Apps Script编辑器点击运行按钮测试函数:ImportJSON和ImportJSONAdvanced都依赖表格公式传入的url参数,直接在编辑器运行时没有传入任何参数,url变量为空就会触发该报错,函数测试请直接在表格中输入公式调用即可
  • 优化脚本参数容错逻辑:原代码中fetchOptions传null不符合UrlFetchApp.fetch的参数要求,同时缺少url合法性校验,修改后的代码如下:
function ImportJSONAdvanced(url, fetchOptions, query, parseOptions, includeFunc, transformFunc) {
  // 新增url参数校验
  if (!url || typeof url !== 'string' || url.trim() === '') {
    return "无效的API请求地址"
  }
  // 修复fetchOptions空值问题
  const validFetchOptions = fetchOptions || {muteHttpExceptions: true}
  var jsondata = UrlFetchApp.fetch(url, validFetchOptions);
  var object = JSON.parse(jsondata.getContentText());
  return parseJSONObject_(object, query, parseOptions, includeFunc, transformFunc);
}

修改完成后保存脚本,刷新表格即可正常拉取CoinGecko的加密货币数据。

内容的提问来源于stack exchange,提问作者user3774288

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:06:07