2017-02-15 175 views
1

我的Google表格中有一些脚本/完成所有脚本可能需要很长时间(我认为最多5分钟)。我想显示一些消息,用户应该稍微等一下。所以我有这样的代码:功能运行时Google Apps脚本刷新表

function test(){ 
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); 
    var cell = sheet.getRange("A1"); 
    sheet.clear(); 
    cell.setValue('WAIT!!!!'); 
    DATA = UrlFetchApp.fetch(url); 
    // And some action that takes a lot of time .... 
    cell.setValue('DONE!!!!'); 

但它不显示“等待”它只显示我“完成”,当一切正常。如果有任何错误和功能崩溃,它只能显示“WAIT”。看起来我需要以某种方式刷新它。

回答

3

将单元格值设置为等待后调用flush()方法。

SpreadsheetApp.flush(); //Applies all pending Spreadsheet changes. 
+0

这没有帮助。它没有显示任何内容,因为脚本在服务器端运行,直到完成后才会返回任何内容。 –

+1

'SpreadsheetApp.flush()'是专门用于在脚本仍在运行时更新工作表的,并且不需要返回任何内容。我在无限循环之前调用它来检查并且它仍然更新表单。 – Hink

+0

嗯,刚刚测试过,它确实工作,对不起,我很确定它不适用于以前版本的电子表格..我的坏,我应该检查! upvote补偿;)。 –

相关问题