訪問して頂きありがとうございます。まさふくろーです。
この記事では、チェックボックスにチェックが付いているかを判定する方法をご紹介します。
目次
チェックボックスにチェックが付いているかを判定する
動作イメージ
使用するステートメント
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.1 シートにボタンを作成ボタンをクリックしたときにスクリプトを実行する
Step.2 スクリプトを作成
「ツール」をクリックします。
「スクリプトエディタ」を選択します。
すると、スクリプトエディタが起動します。
スクリプトを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
function getCheckValue() { let spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); let sheet = spreadsheet.getSheetByName('アンケート'); sheet.activate(); let range = sheet.getRange("B2:C6"); let values = range.getValues(); let checkvalue = ""; for (let i = 0; i < values.length; i++) { if (values[i][0] == true){ checkvalue =checkvalue + values[i][1] + "\\n"; } } Browser.msgBox(checkvalue); } |
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 ボタンにスクリプトを割り当てるボタンをクリックしたときにスクリプトを実行する
関連記事
シートにチェックボックスを作成する
【スプレッドシート】シートにチェックボックスを作成するには?
チェックボックスを一括選択・解除する
最後まで読んでいただき、ありがとうございました!