Javascript 为什么我的谷歌应用程序脚本自动刷新代码不起作用?
我写了一个简单的代码来自动刷新Google表单中的数字。我使用应用程序脚本将Javascript 为什么我的谷歌应用程序脚本自动刷新代码不起作用?,javascript,google-apps-script,Javascript,Google Apps Script,我写了一个简单的代码来自动刷新Google表单中的数字。我使用应用程序脚本将I打印到相关位置。数据需要每15秒刷新一次。但它不起作用。它应该在第15秒写入0,在第30秒写入1,在第45秒写入2。但是0不写1,它只写最后一个循环中的2。为什么它不每15秒写一次数据 function exampleFunction() { var app = SpreadsheetApp; var spreadSheet = app.getActiveSpreadsheet(); var activeS
I
打印到相关位置。数据需要每15秒刷新一次。但它不起作用。它应该在第15秒写入0
,在第30秒写入1
,在第45秒写入2
。但是0
不写1
,它只写最后一个循环中的2
。为什么它不每15秒写一次数据
function exampleFunction() {
var app = SpreadsheetApp;
var spreadSheet = app.getActiveSpreadsheet();
var activeSheet = spreadSheet.getSheetByName("sheetname");
var i = 0;
while(true){
activeSheet.getRange(1, 1).setValue(i);
i++;
Utilities.sleep(15000);
if(i == 3){
break;
}
}
出于文档原因,我可以确认Tanaike的评论,它与
SpreadsheetApp.flush()
配合使用,正如预期的那样:
function exampleFunction() {
var app = SpreadsheetApp;
var spreadSheet = app.getActiveSpreadsheet();
var activeSheet = spreadSheet.getSheetByName("sheetname");
var i = 0;
while(true){
activeSheet.getRange(1, 1).setValue(i);
SpreadsheetApp.flush()
i++;
Utilities.sleep(15000);
if(i == 3){
break;
}
}
}
我认为在这种情况下,需要使用
SpreadsheetApp.flush()
。因为在脚本运行时,setValue
会修改单元格值。例如,将SpreadsheetApp.flush()
放在activeSheet.getRange(1,1).setValue(i)行之后如何代码>?你说的很管用。问题解决了,谢谢。谢谢你的回复。我很高兴你的问题解决了。