加藤です。次にブログ記事を書く頃にはたぶん健康診断が終わっているはず。今からびくびくしております。
前回に引き続き、GoogleスプレッドシートでGASを使っていきます。
はじめに
文書作成作業をしていると、シートの全域、または特定の範囲内のセルに入っている値をまとめて削除したい…ということがよくあります。
例えばこんな感じのテスト項目表があったとして、「確認点」や「日付」「結果」「確認者」の列の値をクリアすれば次回からはフォーマットの使い回しができてちょっとラクになるぞ、という状況です。
ということで今回は範囲指定での入力値クリアに挑戦です。
スクリプトエディタを開くところまでは前回と一緒です。
(1)関数作成
前回作成したプロジェクトに自作の関数 resultClear() を追加しました。
GASでの範囲選択は getRange() でできるようです。
(2)実行
作った関数をさっそく選択して実行してみます。
成功しました!
(3)おまけ・エラーメッセージ出力とデバッグ実行
あっさりできてしまったのでおまけを。
今回、スクリプト実行中にエラーがあった場合はtry catchでエラーメッセージを出すようにしてあります。
さっきの resultClear() の中で、getRange()の引数に存在しないシート名をわざと指定してみます。
…こんな感じでメッセージが出ます。
また、スクリプトエディタ上ではデバッグ実行ができるようなのでやってみます。 左側の行数をクリックするとブレークポイントをセットでき、虫のアイコンをクリックするとデバッグ実行がスタートします。
実行結果はselectedRangeのUndefined。ちゃんと範囲選択ができていないことがわかりました。
おわりに
今回は入力値のクリアをしましたが、範囲選択した上での操作はなかなか使う機会が多いのでいろいろなことができるよう身につけておきたいです。
エラーメッセージ出力とデバッグの方法も勉強になりました。