【GAS】複数列、複数行のセルの値を取得するには?

訪問して頂きありがとうございます。まさふくろーです。

この記事では、複数列、複数行のセルの値を取得する方法をご紹介します。

複数列、複数行のセルの値を取得する

動作イメージ

  1. ボタンをクリック
  2. 「住所データ」シートを選択
  3. 「B2」~「D11」セルの値を取得
  4. 取得した値をメッセージボックスに表示

使用するステートメント

forステートメント

for (初期化式; 条件式; 増減式) {

       繰り返す処理;

}

説明
条件式にあてはまる間、処理を繰り返すには、forステートメントを使用します。

使用するメソッド

getActiveSpreadsheetメソッド

SpreadsheetApp.getActiveSpreadsheet()

説明
現在アクティブなSpreadsheetオブジェクトを返します。

getSheetByNameメソッド

Spreadsheetオブジェクト.getSheetByName(シート名)

説明
指定したシート名のSheetオブジェクトを返します。

activateメソッド

Sheetオブジェクト.activate()

説明
指定したシートを選択状態にします。

getRangeメソッド

Sheetオブジェクト.getRange(a1Notation)

説明
セル範囲を取得します。
指定項目 必須 説明
a1Notation 単一セルまたはセル範囲(複数セル)を指定します。

getValuesメソッド

getRangeメソッドで取得したセル範囲.getValues()

説明
getRangeメソッドで取得したセル範囲の値を2次元配列で返します。
行列のインデックスは1から始まりますが、配列は[0][0]から始まります。

msgBoxメソッド

参考 Browser.msgBoxメソッドボタンをクリックしたときにスクリプトを実行する

使用するプロパティ

lengthプロパティ

配列変数.length

説明
配列の要素数を取得するには、lengthプロパティを使います。

手順

おおまかな流れ

Step.1
シートにボタンを作成

Step.2
スクリプトを作成

Step.3
ボタンにスクリプトを割り当てる

詳細

Step.1 シートにボタンを作成

参考 Step.1 シートにボタンを作成ボタンをクリックしたときにスクリプトを実行する

Step.2 スクリプトを作成

「ツール」をクリックします。

 

「スクリプトエディタ」を選択します。

 

すると、スクリプトエディタが起動します。

 

スクリプトを記述します。

 

1 「getCellValue」関数を作成。
3 現在アクティブなスプレッドシートオブジェクトを取得し、変数「sheet」に格納
4 「住所データ」シートオブジェクトを、変数「sheet」に格納。
6 「住所データ」シートを選択状態にする。
8 「B2」~「D11」セルの位置を取得します。
9 「B2」~「D11」セルの値を取得します。
11~13 セルの値を保持する変数「value1」「value2」「value3」を初期化。
15 配列の要素数の分だけ以下処理を繰り返す。
16~18 セルの値を一つずつ取得し、変数「value1」(氏名)、「value2」(氏名(カタカナ))、「value3」(性別)それぞれに改行付きで格納していく。
20~22 16~18行目で取得した値をメッセージボックスに表示する。
Step.3 ボタンにスクリプトを割り当てる

参考 Step.3 ボタンにスクリプトを割り当てるボタンをクリックしたときにスクリプトを実行する

関連記事

単一セルの値を取得する

【GAS】単一セルの値を取得するには?

同一列、複数行のセルの値を取得する

【GAS】同一列、複数行のセルの値を取得するには?

最後まで読んでいただき、ありがとうございました!