2022/04/23 本日のPodcastはお休みします。

GASを使ったプログラムの実行途中で値を更新したいときの処理

Google Spreadsheet・GAS

こんにちは。安慶名勇子(アゲナユウコ)です。

表計算ソフトといえばExcel!という方もまだ多いかと思いますが、個人的にはExcelを使用する機会はかなり減りまして、Google Spreadsheetを主に使っています。何と言ってもGASでのプログラミングをしてしまえばいろいろと自動化できる点が魅力的。まぁ、Excelでも似たようなことはできますけど、使える環境の違いや使える関数、プログラムの記述のしやすさ…を考えると個人的にはGoogle Spreadsheetの方に軍配が上がるんですよね。

個人的な作業はもちろんのこと、お仕事としてGASのプログラム記述を請け負うこともあるわけですが、その際にも良く使用している、GASプログラム実行途中でのスプレッドシートの値の更新方法について、知っておくと便利なので記載しておきます。

おそらくGAS初心者が戸惑うところだと思うのですが、GASって、実行の最中はスプレッドシートの値がリアルタイムで更新されません。ちょっとしたタイムラグがあるんです。そのため、この現象を知らないでいると「正しくプログラムが動いているのに、なぜスプレッドシートには値が反映されないの!?」と頭を抱えることになるんですよね(経験談)。

この特性、どんな時に不具合が起こるかというと、例えば請求書を作成後にPDF出力するプログラム…なんか該当するのでは。本来であれば、請求書に必要な値を入力後、計算結果が正しく表示された状態で、PDFファイルの作成を行いたい。しかし、GASの実行中のタイムラグのせいで、計算結果が表示される前にPDF出力されてしまう…と。結果として、全く役に立たない請求書が出来上がってしまうわけですね。これじゃ使えない。

本来の目的を達成するには、計算結果が反映された後にPDFを出力しなければなりません。つまり、PDF出力処理の前に正しい情報に値を更新する処理を施さなければならないわけです。

といってもその方法は簡単で、値を更新したいタイミングの場所にこの1文を記載するだけ。

この部分が実行されたタイミングでスプレッドシートに値が反映されます。デバッグで確認するとわかりやすいので一度試してみてください。知っているのと知らないとでは結果に大きく差が出る1文です。

Google Apps Script 公式サイトも掲載されているのでぜひ参考にしてください。

Yuko Agena

Yuko Agena

モノづくりやひとり旅、ガジェット好きのソリスト。仕事のこと、プライベートのこと、日々の出来事や思考を記録しています。

関連記事

特集記事

Yuko Agena

Yuko Agena

仕事のこと、プライベートのこと、日々の出来事や思考をジャンルを問わず気ままに記録しています。どちらかというとソリストで、ひとり旅やモノ作りが好き。

更新情報

2022年5月
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

最近の記事

  1. 【Vol.159】カールおじさんになってしまった原因を探る。デジタルツールと健康のお話。

  2. 【Vol.158】初めて訪ねた眼鏡屋さんでの体験。ビジネスもプライベートも大事なのは○だよね…って話。

  3. 【Vol.157】この連休で達成したことと未達成なこと。計画や時間の他に見逃しがちなもうひとつの要素について。

  4. 【Vol.156】大型連休に突入!徹底的なメンタルケアのためにGWはこう過ごす。

  5. 【Vol.155】自分のためにと決めたことが自分を苦しめてはいないか。決めないことが自分を救うこともある…という話。

ランキング

  1. 1

    WordPress「サイトに重大なエラーがありました」の解消方法

  2. 2

    テレビなしの生活を10年以上続けている私が感じる、テレビのない生活のメリット・デメリット

  3. 3

    WordPressで管理者メールアドレスが変更できないときの対処法

  4. 4

    YouTubeで流行っているらしいflixzoneを推奨するスパムコメントに気をつけて!

  5. 5

    Todoistは有料版がおススメ!無料版との違いと使い心地をグランドマスターが解説してみる

TOP