3

当我第一次在 Google 表格中创建图表时,标题位于一个可移动的框中,我可以在图表框内选择并拖动它。

如果我然后以编程方式更改该标题,例如

        chart = chart.modify()
        .setOption('title',ChartTitleNameReplacement)
        .build();
        selectedSheet.updateChart(chart); 

标题会跳到图表框的顶部,并且不能拖动到任何地方。

我需要在 Google Apps 脚本代码中进行哪些选项设置才能保持该框可移动?或者,有没有办法在图表框中为标题指定一个位置?

4

1 回答 1

3

我遇到了与您的情况相同的问题。我认为这可能是一个错误。在这种情况下,我使用 Sheets API 实现了在不锁定标题位置的情况下修改标题。示例脚本如下。

示例脚本:

在运行脚本之前,请在 Advanced Google services 中启用 Sheets API

const updatedTitle = "### updated title ###";

const ss = SpreadsheetApp.getActiveSpreadsheet()
const ssId = ss.getId();
const chart = Sheets.Spreadsheets.get(ssId).sheets[0].charts[0];
delete chart.position;
chart.spec.title = updatedTitle;
Sheets.Spreadsheets.batchUpdate({requests: [{updateChartSpec: chart}]}, ssId);
  • 在这种情况下,活动 Google 电子表格中第一个工作表中第一个图表的标题被修改。

笔记:

  • 当只修改标题时,会出现类似内部错误的错误。在UpdateChartSpecRequest,没有fields。我认为这可能是问题的原因。所以我通过修改标题将现有属性添加到请求正文中。请注意这一点。
  • 在当前阶段,当标题更新时,似乎标题位置被重置。
  • 这是一个简单的示例脚本,用于在不锁定标题位置的情况下修改图表标题。所以请根据您的实际情况进行修改。
  • 我在问题跟踪器中找不到这个问题。那么怎么举报呢?

参考:

于 2020-05-28T09:02:56.060 回答