关闭一个打开的电子表格

时间:2016-12-15 16:29:26

标签: google-apps-script google-sheets google-form

我有一个Google表单,可以通过Id打开电子表格,然后从中获取数据行。我处于这种情况,有时当我打开电子表格来获取行时,似乎无法获取我最近插入的数据行。在这种情况下,我想断开与当前与电子表格的连接并重新连接一个全新的连接,希望新连接将返回最近插入的行。以下是我的代码:

var sheet = SpreadsheetApp.openById("google_spreadsheet_id").getSheets()[0];
var numOfDataRows = Number(sheet.getLastRow()) - Number(1);
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0];
var dataRows = sheet.getRange(2, 1, numOfDataRows, sheet.getLastColumn()).getValues();

我的问题是重新连接并建立一个全新的连接,我只是这样做:

var sheet = SpreadsheetApp.openById("google_spreadsheet_id").getSheets()[0];

是否存在通过Id关闭打开的电子表格的方法?

1 个答案:

答案 0 :(得分:3)

没有关闭电子表格的功能,但有一个方法SpreadsheetApp.flush()可用于确保电子表格的任何挂起更改(例如行插入)实际发生在代码执行之前。< / p>

此外,如果您的脚本是通过向表单提交数据触发的,则最好直接从event object检索数据,而不是从可能出现或未出现的电子表格中检索数据。