我有一个图表,这是创建一个数据范围(可以说一个:C)在谷歌上床单。
如果我添加新的栏(因此,我们现在有一:D),我不能看到新的一列表示在数据点我可以添加下 Chart Editor -> Setup -> Series
.
没有图需要刷新或东西,以便看看新列? 我试着看这里,但它似乎没有帮助: 如何力谷歌新的电子表格的更新和重新计算?
我有一个图表,这是创建一个数据范围(可以说一个:C)在谷歌上床单。
如果我添加新的栏(因此,我们现在有一:D),我不能看到新的一列表示在数据点我可以添加下 Chart Editor -> Setup -> Series
.
没有图需要刷新或东西,以便看看新列? 我试着看这里,但它似乎没有帮助: 如何力谷歌新的电子表格的更新和重新计算?
为实现这一点,可以使用的谷歌应用脚本。 使用一种触发器火灾当的文件是编辑 onEdit()
而反映新的内容在图表中使用的类 EmbeddedChart
.
假设表看起来是这样的(例如应该与另一种格式):
名称 | 措施1 | 措施2 |
---|---|---|
马歇尔 | 1 | 2 |
Barney | 2 | 3 |
Ted | 3 | 4 |
它将产生一个图像这样:
Tools>Script Editor
Code.gs
文件中添加如下:Code.gs
const onEdit = (event) => {
// Get the active SpreadSheet
let ss = SpreadsheetApp.getActiveSheet()
// If you want to limitate the range within
// you should use the range within the Event Objects
Logger.log(event.range)
let chart = ss.getCharts()[0]
// Get to A1 to the last available cell
let newRanges = ss.getRange(1, 1, ss.getLastRow(), ss.getLastColumn())
chart = chart.modify()
// Clear the old ones
.clearRanges()
// Add the updated values
.addRange(newRanges)
.build()
ss.updateChart(chart)
}
上述脚本时会触发的每一次编辑片在那里被包括在内。 得到的最新数据从电子表格,并将它包括在图表中。 现在的脚本中检测到的任何变化的电子表格,并增加了从第一个单元到最后的图表。
注: onEdit
是太过宽泛,可以控制它的使用不同的方法,例如:
if(e.range.getRow()>20) return
例如,添加这种新的数据:
名称 | 措施1 | 措施2 | 措施3 |
---|---|---|---|
马歇尔 | 1 | 2 | 3 |
Barney | 2 | 2 | 4 |
Ted | 3 | 4 | 5 |
莉莉 | 5 | 6 | 5 |
它会自动产生这个图表:
如果你认为这应该包括在张,你也可以送反馈使用谷歌 Help>Help Sheets Improve
或通过 链接.