スプレッドシートのチェックボックスの使い方|集計と色分けまで

執筆者:

カテゴリ:

チェックボックスは、セルに ON / OFF のスイッチを置く機能です。

Excelでは図形として扱われ、セルとの紐付けが面倒でしたが、スプレッドシートではセルの値そのものになります。この違いが集計のしやすさを生みます。

作り方

セルを選択して「挿入 → チェックボックス」。これだけです。

範囲を選択してから実行すれば、まとめて挿入できます。

削除するときは、セルを選択して Delete キーではなく、「データ → データの入力規則 → 削除」から行ってください。Delete だとチェックが外れるだけで、ボックス自体は残ります。

中身は TRUE / FALSE

ここが最も重要です。

チェックボックスの実体は、TRUEFALSE という論理値です。図形ではなく、セルの値です。

=A2            → TRUE または FALSE
=IF(A2, "済", "未")   → チェック済みなら「済」

IF(A2 = TRUE, ...) と書く必要はありません。IF(A2, ...) で足ります。

この性質のおかげで、そのまま計算に使えます。

チェック数を数える

=COUNTIF(A2:A100, TRUE)

TRUE はクォートで囲みません。文字列ではなく論理値だからです。

未チェックを数えるなら次の形です。

=COUNTIF(A2:A100, FALSE)

進捗率を出すなら割ります。

=COUNTIF(A2:A100, TRUE) / COUNTA(A2:A100)

セルの表示形式を「パーセント」にすれば、進捗率が自動で更新されるタスクリストになります。

チェックした行だけ集計する

SUMIF の条件に使えます。

=SUMIF($A$2:$A$100, TRUE, $C$2:$C$100)

チェックが入っている行の金額だけを合計します。買い物リストや経費精算で使えます。

複数条件なら SUMIFS です。

=SUMIFS(C:C, A:A, TRUE, B:B, "食費")

チェックした行だけ抽出する

FILTER の条件にそのまま渡せます。

=FILTER(B2:D100, A2:A100)

= TRUE を書く必要はありません。 論理値をそのまま条件にできます。

逆にチェックが入っていない行なら、NOT を使います。

=FILTER(B2:D100, NOT(A2:A100))

条件付き書式と連動させる

チェックした行にグレーの背景を付けて、完了を視覚化できます。

「表示形式 → 条件付き書式 → カスタム数式」に次を入れます。

=$A2 = TRUE

範囲を A2:E1000 にすれば、行全体に色が付きます。

列だけを $ で固定するのがポイントです。行を固定($A$2)すると、全行がA2の値で判定されてしまいます。

打ち消し線を付けたいなら、書式で「取り消し線」を選んでください。完了したタスクが視覚的に消えるので、リストとして使いやすくなります。

チェックの値を変更する

既定は TRUE / FALSE ですが、別の値に変えられます。

「データ → データの入力規則 → チェックボックス → カスタムのセル値を使用する」

チェック時を 完了、未チェック時を 未着手 にする、といった設定ができます。

ただし、これをやると COUNTIF(A:A, TRUE) が動かなくなります。 集計する予定があるなら、既定の TRUE / FALSE のままにしておくほうが確実です。

一括操作

全部チェックする/外すには、範囲を選択して Space キーを押します。

数式で制御することはできません。チェックボックスのセルに数式を入れると、チェックボックスが消えます。 手動入力専用と考えてください。

「条件に応じて自動でチェックを入れたい」という要件は、チェックボックスでは実現できません。別のセルに IF で判定を出すか、Google Apps Script が必要になります。

プルダウンとの使い分け

状況 使うもの
ON / OFF の2択 チェックボックス
選択肢が3つ以上 プルダウン
状態が「未着手→進行中→完了」 プルダウン
クリック1回で切り替えたい チェックボックス

チェックボックスは1クリックで切り替わるのが最大の利点です。プルダウンは開いて選ぶ2動作が必要になります。

タスクリストのように頻繁に切り替えるものは、チェックボックスのほうが圧倒的に速くなります。

実用例:進捗管理シート

A B C D
1 完了 タスク 担当 期限
2 資料作成 山田 4/10
3 レビュー 鈴木 4/15

進捗率

=COUNTIF(A2:A100, TRUE) / COUNTA(B2:B100)

未完了かつ期限切れの件数

=COUNTIFS(A2:A100, FALSE, D2:D100, "<"&TODAY())

条件付き書式(完了はグレー+取り消し線)

=$A2 = TRUE

条件付き書式(未完了かつ期限切れは赤)

=AND($A2 = FALSE, $D2 <> "", $D2 < TODAY())

$D2 <> "" を入れているのは、期限が未入力の行を赤くしないためです。空欄は0として扱われ、TODAY より小さくなるので、これがないと未入力の行が全部赤くなります。

よくある問題

チェックボックスが消えた

セルに数式や値を直接入力すると消えます。「挿入 → チェックボックス」でやり直してください。

COUNTIFで数えられない

  • "TRUE"(クォート付き)で書いている → クォートを外す
  • – カスタムのセル値に変更している → その値で数える

条件付き書式が全行に適用される

参照が $A$2 になっています。$A2 にしてください。

Deleteしてもボックスが残る

「データ → データの入力規則 → 削除」から消してください。

Excelとの違い

扱いが根本的に違います。

Excel スプレッドシート
実体 図形(フォームコントロール) セルの値
セルとの紐付け リンクセルの設定が必要 不要
集計 リンクセルを参照 そのまま参照
挿入 開発タブが必要 挿入メニューから

Excelではチェックボックスが図形なので、値を使うには「リンクするセル」を設定する手間がありました。

スプレッドシートはセルの値そのものなので、COUNTIFFILTER にそのまま渡せます。 この点はスプレッドシートのほうが圧倒的に扱いやすくなっています。

まとめ

  • – 「挿入 → チェックボックス」で作る
  • 実体は TRUE / FALSE の論理値。そのまま計算に使える
  • – 数えるのは =COUNTIF(A:A, TRUE)クォートは付けない
  • FILTER の条件にそのまま渡せる= TRUE 不要)
  • – 条件付き書式は =$A2 = TRUE列だけ固定
  • 数式で自動チェックはできない。手動入力専用

関連ページ

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です