google-apps-script - 获取 gsheet 组合图表以通过电子邮件发送它们
问题描述
这是我在这里的第一个问题,尽管我之前从很多问题中得到了一些有用的指导。我希望我不会错过这个问题中的任何重要内容。
我目前正在 Google Apps Script 中编写一个脚本,以通过电子邮件从 Google 表格文档中发送一些图表作为图像。我的问题是使用Combined Charts,当我尝试阅读它们并将它们作为图像获取时,我得到一个错误。
我已将代码减少到仍然会抛出我正在谈论的错误的最低限度。
function test_chart_fails(){
let gdoc_id = "xxxxxxxxxxxx";
let sheet_name = "test2";
let document = SpreadsheetApp.openById(gdoc_id);
let sheet = document.getSheetByName(sheet_name);
let charts = sheet.getCharts();
let chart = charts[2];
let inLineImages = {};
inLineImages["chartC"] = chart.getAs('image/png');
}
我收到以下错误:
例外:访问 ID 为 xxxxxxxxxxxxxxxxxxxxxxxxxx 的文档时,服务电子表格失败。
test_chart_fails @ AppsScriptFile.gs:305
其中 305 是我的示例代码的最后一行(带有“chart.getAs”的代码)。
现在一些可能相关(或不相关)的附加信息:
有问题的工作表总共有 9 个图表。如果我尝试访问 9 个中的 7 个(仅是组合图表),则会收到此错误。其他图表也可以,我可以将它们放入通过 MailApp 发送的电子邮件中。所有图表都是在 Gsheets 文档中手动创建的。关于构建图表的工作表中的数据,工作表有 103 行和 44 列。工作表中的所有数据都是公式,而不是值。
我已经在此站点和其他出现此错误消息的站点中搜索了现有问题,但我没有找到错误与图表检索相关的问题 - 特别是没有与组合图表相关的实例。一个实例提到了与工作表大小相关的错误,所以我提到了数据大小(行 x 列),但我认为这不是问题 - 因为脚本对于基于相同数据集的非组合图表运行良好。
这是组合图表的预期吗?有没有办法我可以像其他人一样“检索”它们并通过电子邮件发送它们?
解决方案
这似乎是一个错误
https://issuetracker.google.com/182701055
SpreadsheetApp.getActive().getSheetByName().getCharts().getAs()
返回此错误:“服务电子表格在访问具有 id 的文档时失败”...当折线图具有右垂直轴时
我鼓励你去给这个问题加注星标,让谷歌知道它会影响你并订阅更新。
如果尚未提及,还鼓励您在此处发布任何进一步的复制步骤和解决方法。
您提到的解决方法
推荐阅读
- git - 命令行中的Commitizen:有没有办法回到上一个字段?
- sql - 如何处理 SQL Server 中的序列?
- php - PDO While 循环只获取最后的数据
- sql - SQL 编号通配符问题
- snowflake-cloud-data-platform - 连接 SnowSQL 时出错无法建立新连接:
- asp.net - 用于 asp dotnet api 的 Ubuntu 服务用户
- python - 有谁知道我可以如何提高我的 RNN 的准确性
- python - KeyError: color='variable' 使用绘图
- google-colaboratory - 是否可以更改 google colab notebook IP/位置?
- html - 点击任一卡片时,Accordion 会展开所有卡片