見出し画像

GAS(Google Apps Script):スプレッドシート更新遅延を防ぐ方法

Google Apps Script(GAS)でスプレッドシートを更新した後にPDF化する場合など、スプレッドシート関数の再計算が完了する前に、後続処理が実行されて意図しない結果となる場合があります。

例えば、
 ① GASでスプレッドシートを更新
 ② ①の更新に伴い、スプレッドシート関数の再計算が自動実行
 ③ ①の後続処理として、GASでスプレッドシートをPDF化
のような処理の場合、②の再計算が完了する前に③のGASが実行されて不完全な状態でPDFが作成される場合があります。

そんな時は、①の後にスプレッドシートの再描画を行ってから、③のPDF化などのを行うと、更新遅延を回避できる。

//①スプレッドシートを更新        

SpreadsheetApp.flush(); //シートの再描画を行い、スプレッドシート関数の再計算を実行

//③PDF化や印刷などの後続処理

参考
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#flush()

GAS中心に記事を書いています、よろしければサポートお願いします!!