
Googleスプレッドシートで、チェックボックスの「チェックあり(なし)」のデータだけを抽出する方法を紹介します。チェックボックスはチェックありが「TRUE」、なしが「FALSE」に定義されていることを利用すると、関数やフィルター機能で簡単に抽出できます。
「FILTER関数」でチェックあり・なしを抽出する

FILTER関数で「条件範囲」をチェックあり(=TRUE)またはチェックなし(=FALSE)で絞込み、絞り込んだ結果を指定の範囲から抽出します。
チェックあり:=FILTER(B2:B5,A2:A5=TRUE)
チェックなし:=FILTER(B2:B5,A2:A5=FALSE)
FILTER関数の引数:(範囲, 条件1, [条件2, …])
📖 チェックが1件もないときのエラーを非表示にする
もし「チェックあり」が1件もない場合、#N/A エラーになります。エラーを非表示にしたい場合、次のようにIFERROR関数と組み合わせます。
例:=IFERROR(FILTER(B2:B5,A2:A5=TRUE),"")
「フィルター機能」でチェックあり・なしを抽出する

【手順】
- チェックボックスとデータの範囲を選択します。
- メニューの「データ」から「フィルタを作成」をクリックします。(
Alt+D→F) - チェックボックスの列のフィルタアイコンを開き、チェックありなら「TRUE」だけ、チェックなしなら「FALSE」だけにチェックが入った状態にして、「OK」を押します。
別のシートに抽出する

以下のように、数式の範囲の前に「’シート名!’」を付けます。※数式の入力中に対象のシートを開き、範囲をマウスで囲うだけで、数式内に自動でシート名と範囲が入ります。
例:=FILTER('シート1'!A2:B5,'シート1'!A2:A5=TRUE)
💡 チェックボックスの列も抽出したい場合:
そのまま抽出すると「TRUE」や「FALSE」という文字で表示されますが、「挿入」→「チェックボックス」に設定することでチェックボックスの表示に直すことができます。
📖 別のスプレッドシートの場合:
別のスプレッドシートに抽出したい場合は、IMPORTRAGE関数でデータを取り込み、取り込んだデータからFILTER関数でチェックあり(なし)のみ抽出します。
- 例:
=FILTER(IMPORTRANGE("シートのURL","シート1!A2:B5"),IMPORTRANGE("シートのURL","シート1!A2:A5")=TRUE)
QUERY関数を使うとIMPORTが1回で済むので数式がシンプルになります。
- 例:
=QUERY(IMPORTRANGE("シートのURL","シート1!A2:B5"), "SELECT Col1, Col2 WHERE Col1 = TRUE")
※詳しい解説は「FILTER関数で別シートを参照する」の記事をご覧ください。