【GAS】チェックボックスにチェックが付いているかを判定するには?

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

この記事では、チェックボックスにチェックが付いているかを判定する方法をご紹介します。

チェックボックスにチェックが付いているかを判定する

動作イメージ

  1. ボタンをクリック
  2. 「アンケート」シートを選択
  3. 「B2」~「C6」セルの値を取得
  4. B列の中でチェック済みの場合、C列の値を取得
  5. 取得した値をメッセージボックスに表示

使用するステートメント

forステートメント

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

       繰り返す処理;

}

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

ifステートメント

参考 ifステートメントボタンをクリックしたときにスクリプトを実行する

使用するメソッド

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 「getCheckValue」関数を作成。
3 現在アクティブなスプレッドシートオブジェクトを取得し、変数「spreadsheet」に格納
4 「アンケート」シートオブジェクトを、変数「sheet」に格納。
6 「アンケート」シートを選択状態にする。
8 「B2」~「C6」セルの位置を取得します。
9 「B2」~「C6」セルの値を取得します。
11 セルの値を保持する変数「checkvalue」を初期化。
13 配列の要素数の分だけ以下処理を繰り返す。
14 B列のチェックボックスにチェックが付いている場合、以下処理を行う。
15 C列のセルの値を取得し、変数「checkvalue」に改行付きで格納していく。
18 15行目で取得した値をメッセージボックスに表示する。
Step.3 ボタンにスクリプトを割り当てる

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

関連記事

シートにチェックボックスを作成する

【スプレッドシート】シートにチェックボックスを作成するには?

チェックボックスを一括選択・解除する

【GAS】チェックボックスを一括選択・解除するには?

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