以下代码会导致空白表,可能是由于 .clear() 最后执行,即使它列在最前面?
const ss = SpreadsheetApp.getActiveSpreadsheet();
var contractSheet = ss.getSheetByName(sheetName);
contractSheet.clear();
const body = {requests: [{pasteData: {html: true, data: table[0], coordinate: {sheetId: ss.getSheetByName(sheetName).getSheetId()}}}]};
Sheets.Spreadsheets.batchUpdate(body, ss.getId());
如果我删除 .clear() ,脚本将运行并填充工作表。但我需要在从最终批量请求加载新数据之前清除工作表。
任何想法将不胜感激。 :-)
在这种情况下,如何使用SpreadsheetApp.flush()
在你的脚本中如下?我以为之后clear()
运行后,需要反映它并请求Sheets API的batchUpdate方法。
修改后的脚本:
const ss = SpreadsheetApp.getActiveSpreadsheet();
var contractSheet = ss.getSheetByName(sheetName);
contractSheet.clear();
SpreadsheetApp.flush(); // Added
const body = {requests: [{pasteData: {html: true, data: table[0], coordinate: {sheetId: ss.getSheetByName(sheetName).getSheetId()}}}]};
Sheets.Spreadsheets.batchUpdate(body, ss.getId());
参考:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)