Google apps script 打开时自动更新google幻灯片中的所有链接对象
我想自动更新谷歌幻灯片中的链接对象(图表和表格)。我从下面的代码中看到了答案并汇编了代码:Google apps script 打开时自动更新google幻灯片中的所有链接对象,google-apps-script,google-slides,Google Apps Script,Google Slides,我想自动更新谷歌幻灯片中的链接对象(图表和表格)。我从下面的代码中看到了答案并汇编了代码: function onOpen() { SlidesApp.getUi() // Or DocumentApp or FormApp. .createMenu('Update Charts') .addItem("Update now", 'refreshCharts').addToUi(); refreshCharts(); } function refreshCharts(){
function onOpen() {
SlidesApp.getUi() // Or DocumentApp or FormApp.
.createMenu('Update Charts')
.addItem("Update now", 'refreshCharts').addToUi();
refreshCharts();
}
function refreshCharts(){
var gotSlides = SlidesApp.getActivePresentation().getSlides();
for (var i = 0; i < gotSlides.length; i++) {
var slide = gotSlides[i];
var sheetsCharts = slide.getSheetsCharts();
for (var k = 0; k < sheetsCharts.length; k++) {
var shChart = sheetsCharts[k];
shChart.refresh();
}
}
}
函数onOpen(){
SlidesApp.getUi()//或DocumentApp或FormApp。
.createMenu('更新图表')
.addItem(“立即更新”,“刷新图表”).addToUi();
刷新图表();
}
函数刷新图表(){
var gotsileds=SlidesApp.getActivePresentation().getSlides();
对于(var i=0;iupdatecharts>updatenow
时,它会更新图表。但首先,它不会在打开幻灯片时更新图表。还有一个问题,它现在只适用于图表,有没有办法在脚本中也包含表,这样所有的图表和表都可以更新
问题更新 是否有办法将按钮直接链接到“工具>链接对象>全部更新”中的“全部更新”按钮
幻灯片上是否可以有一个按钮直接执行此操作?要更新图表,您的
刷新图表()
函数应该是onOpen()
。对于表,似乎没有与SheetChart
相同的refresh()
功能。在这个问题上有一个链接,您可以查看该链接以获取更新
目前的一个解决方法是使用“工具->链接对象”中“链接对象”菜单的UI中显示的“刷新”按钮手动更新它们。您还可以创建一个函数,根据填充表格的工作表逐单元格更新表格单元格。我在一个包含所有图表的Google电子表格上编写了这样的脚本,并将触发器设置为onChange。因此,每次电子表格更新时,特定数据组上的图表都会自动刷新:
function refreshChartsOnChange(){
var getSlides = SlidesApp.openById('[ID of the Slide here]').getSlides();
for (var i = 0; i < getSlides.length; i++) {
var slide = getSlides[i];
var sheetCharts = slide.getSheetsCharts();
for (var j = 0; j < sheetCharts.length; j++) {
var sheetChart= sheetCharts[j];
sheetChart.refresh();
}
}
}
函数refreshChartsOnChange(){
var getSlides=SlidesApp.openById(“[ID of the Slide here]”)。getSlides();
对于(var i=0;i
Hey@AMolina,你能告诉我你答案第二部分的更多细节吗?我不明白您所说的创建一个函数来逐个单元格更新表单元格的意思。我该如何处理这个问题?@hadik的基本意思是打开电子表格的一个实例,从中获取信息,并使用这些值来更改表中的内容。这是一种令人费解的前进方式,但它会更新表格。嗨@AMolina,你能给我展示一下代码的基本部分吗?比如如何从幻灯片中提取链接表,因为我不知道是否有类似“slide.getSheetsTables();”的内容开始获取链接的电子表格。进一步检查后,我认为按照我建议的方式进行操作太复杂了,我建议您尝试通过“工具”->“链接对象”子菜单手动使用UI进行操作。这很遗憾:(您知道是否有办法直接在菜单栏上添加一个按钮,作为“全部更新”的快捷方式按钮出现在“工具>链接对象”中。