top of page
検索

Googleスプレッドシート:GAS、ループ処理で複数シートのデータを一括処理

更新日:11月8日

Google Apps Script(GAS)は、Googleスプレッドシートの操作を自動化し、効率化するための強力なツールです。本記事では、GASを使って複数のシートのデータを一括で処理する基本的なループ処理の方法を解説します。


初心者にも分かりやすく、実用的なテクニックを学べます。


■ 基本操作

 

複数のシートのデータを一括処理するためには、SpreadsheetApp クラス、getSheets() メソッド、getRange() メソッドを使います。


(1)任意のスプレッドシートを開き、[拡張機能]メニューから[Apps Script]を選択し、エディターを開きます。

(2)(新しいプロジェクトの場合は、書かれているコードを全て消して)以下のコードをエディタに入力します。

  • SpreadsheetApp.getActiveSpreadsheet():現在開いているスプレッドシートを取得します。

  • getSheets():スプレッドシート内のすべてのシートを取得します。

  • for:ループを使って各シートを処理します。

  • getRange('A1'):セルA1を指定した範囲オブジェクトを取得します。

  • setValue('Processed'):指定された範囲オブジェクトに対して、値を入力します。


(3)processMultipleSheets 関数を保存/選択し、実行ボタンをクリックします。

デバックイメージ

(4)スプレッドシートのA1セルに「Processed」と入力されていることを確認しましょう。

(同じく他のシートも全て同様の動きになっていますよね?)

実行結果イメージ

■ 応用編:###

 

基本をマスターしたら、次は応用として、各シートの特定の範囲内のデータを集計するスクリプトを作成してみましょう。


(1)以下のコードをエディタに入力し、実行してみましょう。

  • getRange('A1:A10'):セル範囲A1からA10を指定し、その範囲を取得します。

  • getValues():その範囲内の値を取得します。

  • jをカウンターとした内部ループで各セルの値を集計し、Summary シートに合計を表示します。


(2)実行前の状態はこんな感じです。

  • シートは、3種類

  • 各シート、A1~A10にそれなりの数字を入力済

実行前の入力情報イメージ

(3)「Summary」シートが自動的に追加され、各シートのA1~A10の値を合算した「60」が設定されていることを確認しましょう。

実行結果イメージ


■ まとめ

 

Google Apps Scriptを使えば、複数のシートのデータを効率的に一括処理できます。今回紹介した基本的なループ処理と応用編を活用することで、スプレッドシートの操作をさらに効率化できます。


是非試してみて、業務の効率化に役立ててください。


閲覧数:49回0件のコメント

Comments


bottom of page