谷歌表格API获取合并单元格的值。

4
我正在使用 Google Sheets API 在我的 JavaScript 应用程序中显示来自 Google 电子表格的数据。我是根据这篇文档进行开发的。我能够读取我的电子表格中的值,但对于某些列,单元格已合并如下图所示。

enter image description here

我获得的 JSON 响应为:
[
[
  "Name",
  "Age"
 ],
[
  "John",
  "25"
 ],
[
  "Doe"
 
 ],
]

我的期望输出应该是:

   [
[
  "Name",
  "Age"
 ],
[
  "John",
  "25"
 ],
[
  "Doe",
   "25"
 
 ],
]

有帮助吗?
2个回答

1
要检索值,您需要测试单元格是否属于合并区域。
var value = (cell.isPartOfMerge() ? cell.getMergedRanges()[0].getCell(1,1) : cell).getValue();

嗨,请问在代码中应该在哪里使用这个?请提供JS文档示例帮助。https://developers.google.com/sheets/api/quickstart/js - Jagadeesh
分享你的 JavaScript 应用程序(简化版),这样会更容易... - Mike Steelson
这是文档中给出的完全相同的index.html文件,唯一的更改是我的API凭据。 - Jagadeesh
我认为你也将row[4]更改为row[2],不过可以尝试我的另一个答案或者发布你自己的脚本。 - Mike Steelson

0

将脚本修改如下

    appendPre('Name, Major:');
    var lastData=''
    for (i = 0; i < range.values.length; i++) {
      var row = range.values[i];
      if (row[4]!=''){lastData=row[4]}
      // Print columns A and lastData, which correspond to indices 0 and the last known value in column E that contains merged cells.
      appendPre(row[0] + ', ' + lastData);
    }

这样,如果单元格为空,您将会记住上一个值


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接