excel

【Excel】エクセルでチェックボックスをセルに埋め込む方法

セル内チェックボックスの挿入方法
当サイトでは記事内に広告を含みます

Excelでタスク管理表や申請一覧、確認リストを作るとき、完了した項目をひと目で把握できるチェックボックスは便利な機能です。

ただし、通常のチェックボックスはセルの上に図形のように配置されるため、行の追加や並べ替えを行うと位置がずれたり、セルと一緒に動かなかったりすることがあります。

セルに埋め込む方法を選べば、表の操作に強いチェック欄を作成できます

この記事で確認するポイント

・Microsoft 365のセル内チェックボックスを挿入する方法

・開発タブのフォームコントロールをセルに固定する方法

・チェック結果をTRUEやFALSEとして数式で活用する方法

ここでは、Windows版Excelを中心に、チェックボックスをセルに埋め込む基本操作から、集計や並べ替えで崩れにくくする設定まで解説します。

 

セル内チェックボックスの挿入方法

タスク 完了 担当者
見積書を確認 田中
顧客へ送信 佐藤
回答を記録 鈴木

それではまず、Excelの新しい機能として利用できるセル内チェックボックスについて解説していきます。

 

挿入タブからのチェックボックス追加

Microsoft 365版など、セル内チェックボックスに対応したExcelでは、対象セルを選択してから挿入タブを開き、コントロールのチェックボックスを選ぶことで追加できます。

たとえば、1行目を見出しとして使用し、B2からB10を完了欄にしたい場合は、最初にB2からB10をまとめて選択します。

続いて挿入タブからチェックボックスを実行すると、選択範囲の各セルにチェックボックスが入ります。

セル内チェックボックスはセルの値として管理されるため、通常の図形型チェックボックスより表との相性がよい機能です

挿入後は、各セルをクリックするだけで未チェックとチェック済みを切り替えられます。

対応していないExcelでは、リボン内にこの項目が表示されない場合があります。

セル内チェックボックスの挿入方法

複数セルを先に選択してから挿入すると、同じ操作を何度も繰り返さずに済みます。

 

セルの値として扱われるTRUEとFALSE

セル内チェックボックスには見た目だけではなく、論理値が保存されています。

未チェックのセルはFALSE、チェックを付けたセルはTRUEとして扱われます。

この仕組みにより、チェック済みの件数を数えたり、完了行だけを抽出したりできます。

たとえば、B2からB10にチェックボックスを入れた場合、完了件数を表示したいセルには次の数式を入力します。

=COUNTIF(B2:B10,TRUE)

COUNTIF関数は、指定範囲の中から条件に一致するセルを数える関数です。

この例ではB2からB10のうち、値がTRUEであるセル、つまりチェック済みのセルだけを数えます。

1行目はヘッダーのため集計範囲に含めず、2行目以降を指定することが重要です。

チェックの個数を手入力で管理しなくてよい点が、セル内チェックボックスの大きな利点です

 

チェックボックスをセルの中央へ表示する設定

セル内チェックボックスは、セルの書式設定によって見え方を整えられます。

完了列を選択し、ホームタブの中央揃えを選ぶと、チェックボックスが列の中央に表示されて見やすくなります。

行の高さも適度に広げると、クリックする場所に余裕が生まれます。

実務では、完了欄の列幅を狭めすぎないことも大切です。

列幅が極端に小さいとチェック欄が詰まって見え、誤って別のセルを選ぶ原因になるかもしれません。

また、完了欄には文字や数値を混在させず、チェックボックス専用の列にするのが管理しやすい方法です。

【操作のポイント】完了列は中央揃えにして、TRUEとFALSEの判定に使う列として統一しましょう。

 

フォームコントロールによるセル固定

案件名 確認欄 期限
A社資料 9月10日
B社資料 9月12日

続いては、セル内チェックボックスが使えないExcelでも利用できるフォームコントロールを確認していきます。

 

開発タブの表示

フォームコントロールのチェックボックスを使うには、最初に開発タブを表示します。

ファイルタブからオプションを開き、リボンのユーザー設定を選択します。

画面右側のメインタブ一覧で開発にチェックを入れ、OKをクリックすると、リボンに開発タブが追加されます。

開発タブはVBAだけのための機能ではありません。

フォームコントロールを使って帳票や入力表を整えるときにも必要になるタブです

会社のパソコンで設定が変更できない場合は、Excelの管理ポリシーによって制限されている可能性があります。

開発タブの表示は一度設定すれば、通常は次回以降もリボンに残ります。

 

チェックボックスの配置と文字削除

開発タブを開いたら、挿入を選択し、フォームコントロールにあるチェックボックスをクリックします。

ワークシート上でドラッグすると、チェックボックスが配置されます。

初期状態ではチェックボックスの右側にチェックボックス 1などの文字が表示されるため、文字部分を選択して削除します。

文字を削除した後は、チェックマークだけが残るので、表の完了欄に収めやすくなります。

ここで重要なのは、チェックボックスがセルの中身ではなく、セルの上に重なるオブジェクトであることです。

フォームコントロールは配置後の設定を行わないと、並べ替えや行の挿入で位置がずれることがあります

フォームコントロールによるセル固定

フォームコントロールのチェックボックスは、対応バージョンを問わず使いやすい従来方式です。

 

セルに合わせて移動するプロパティ

配置したチェックボックスを右クリックし、コントロールの書式設定を開きます。

サイズとプロパティにあるプロパティを選択し、セルに合わせて移動やサイズ変更をする設定を有効にします。

この設定により、行を挿入したときや列幅を変えたとき、チェックボックスもセルに追従します。

セルの大きさを変えたくない場合でも、少なくともセルに合わせて移動する設定を選ぶとよいでしょう。

表を並べ替える予定があるなら、チェックボックスの左上が対象セルの内側に収まるように配置することも必要です。

わずかに隣のセルへはみ出していると、Excelが別の行に属するオブジェクトと判断する場合があります。

【操作のポイント】フォームコントロールを使う場合は、配置後にセルに合わせて移動する設定を必ず確認しましょう。

 

リンクセルを使ったチェック結果の取得

作業 チェック 判定用セル
請求内容の確認 FALSE
送付履歴の登録 TRUE

続いては、フォームコントロールのチェック状態を数式や条件付き書式に利用するためのリンクセルを確認していきます。

 

リンクするセルの指定

フォームコントロールのチェックボックスを右クリックし、コントロールの書式設定を開きます。

コントロールタブにあるリンクするセルへ、チェック状態を表示したいセル番地を入力します。

たとえば、B2にチェックボックスを置き、C2を判定用のセルにしたい場合は、リンクするセルにC2と入力します。

チェックを入れるとC2にはTRUE、外すとFALSEが表示されます。

このC列は表の見た目では不要なこともあるため、集計用の補助列として右側に置いたり、列を非表示にしたりするとよいでしょう。

フォームコントロールはリンクセルを指定して初めて、数式で扱えるデータになります

リンクセルを使ったチェック結果の取得

 

完了件数を数えるCOUNTIF関数

リンクセルがC2からC10にある場合、チェック済みの数を数えるにはCOUNTIF関数を使えます。

=COUNTIF(C2:C10,TRUE)

この数式では、C2からC10の中でTRUEになっているセルだけを数えます。

1行目には作業、チェック、判定用セルなどのヘッダーがあるため、範囲は2行目から開始します。

未完了件数も必要であれば、次の数式でFALSEを数えられます。

=COUNTIF(C2:C10,FALSE)

リンクセルが空欄の行を除外したい場合は、作業名の列と組み合わせて集計条件を考える必要があります。

たとえば途中に未使用行がある表では、作業名が入力されている件数と比較して管理すると誤解がありません。

 

完了率を求める数式

進捗管理表では、チェック済み件数だけでなく完了率も表示すると状況を共有しやすくなります。

作業名がA2からA10、リンクセルがC2からC10に入力されているケースでは、次の数式を使えます。

=IF(COUNTA(A2:A10)=0,””,COUNTIF(C2:C10,TRUE)/COUNTA(A2:A10))

COUNTA関数は、空白ではないセルの個数を数える関数です。

この式は、作業名の件数を分母にし、TRUEの件数を分子にすることで完了率を計算しています。

作業がまだ一件もない場合にエラー表示を避けるため、IF関数で空欄を返すようにしています。

数式を入力したセルは、ホームタブのパーセントスタイルで表示形式を設定すると読みやすくなります。

【操作のポイント】リンクセルはチェックボックスと同じ行に置き、集計範囲の開始行をヘッダーの次の行に合わせましょう。

 

条件付き書式と並べ替えの活用

タスク 完了判定 状態
議事録を配布 TRUE 完了
資料を修正 FALSE 未完了

続いては、チェック状態を見やすい表へ変える条件付き書式と、作業の優先順位を整える並べ替えについて確認していきます。

 

TRUEを条件にした行全体の色付け

チェック済みの行を薄い緑色にすると、完了した作業と未完了の作業を視覚的に区別できます。

たとえばA2からD10の表で、C列にリンクセルのTRUEまたはFALSEが表示される場合は、表全体のA2からD10を選択します。

ホームタブの条件付き書式から新しいルールを選び、数式を使用して書式設定するセルを決定を選択します。

数式欄には次のように入力します。

=$C2=TRUE

列記号Cの前に付けたドル記号は、判定列を固定するための指定です。

行番号2にはドル記号を付けないため、各行ではC2、C3、C4のように自動で判定されます。

条件付き書式では、判定する列だけを固定し、行番号は相対参照にすることが基本です

進捗管理表.xlsx – Excel− □ ×
ファイルホーム挿入ページ レイアウト数式データ
BI
罫線塗りつぶし
条件付き書式 ▼

新しいルール
fx=$C2=TRUE
A B C D
1 タスク 担当者 完了判定 状態
2 議事録を配布 田中 TRUE 完了
3 資料を修正 佐藤 FALSE 未完了
TRUEの行だけを緑色に設定

 

チェック済み作業を上へ並べ替える方法

セル内チェックボックスやリンクセルのTRUEとFALSEを使うと、完了作業だけを上または下へまとめられます。

表内のいずれかのセルを選択し、データタブから並べ替えを選びます。

列には完了判定の列を指定し、順序を昇順にするとFALSEが先、TRUEが後になることが一般的です。

TRUEを先頭へ表示したいなら、降順を選択します。

フォームコントロール型のチェックボックスを使う場合は、チェックボックスそのものではなく、リンクセルの列を並べ替えの基準にします。

並べ替えの対象範囲には、タスク名や担当者など関連する全列を含める必要があります

一列だけを並べ替えると、作業名と担当者の対応関係が崩れるため注意しましょう。

 

フィルターで未完了だけを表示する方法

未完了の仕事に集中したいときは、オートフィルターが役立ちます。

1行目にヘッダーがある表の中を選択し、データタブのフィルターを実行します。

完了判定列の絞り込みボタンをクリックしてTRUEのチェックを外すと、FALSEだけを表示できます。

これにより、まだチェックが付いていない作業だけが一覧に残ります。

セル内チェックボックスを使用している場合も、判定値としてTRUEとFALSEが存在するため、同じ考え方で抽出できます。

未完了だけを表示するフィルターは、朝の確認や担当者別の進捗確認に向いています。

【操作のポイント】色付け、並べ替え、フィルターは、チェック状態を示すTRUEとFALSEの列を基準に設定します。

 

チェックボックスがずれる原因と対処

症状 主な原因 対処
行追加でずれる オブジェクト設定 セルに合わせて移動
コピー先で使えない リンクセル未設定 参照先を確認

続いては、チェックボックスをセルに埋め込んだつもりでも起こりやすい表示崩れや操作上のトラブルを確認していきます。

 

行や列の追加で位置が変わる場合

フォームコントロール型のチェックボックスは、セルの値ではなくオブジェクトです。

そのため、行の挿入や列の削除を行ったとき、プロパティの設定次第でその場に残ることがあります。

対処として、チェックボックスを右クリックし、コントロールの書式設定からプロパティを開きます。

セルに合わせて移動やサイズ変更をする、またはセルに合わせて移動する設定を選びます。

大量の行を扱う管理表では、チェックボックスを作成した直後にプロパティを設定する習慣が大切です

既に複数のチェックボックスがある場合は、個別に設定を見直す必要があります。

 

コピー後にリンクセルが重複する場合

チェックボックスをコピーして複製すると、リンクセルの参照先が意図どおりに変わらないことがあります。

たとえば、B2のチェックボックスがC2にリンクしている状態でコピーすると、コピー先もC2を参照してしまう場合があります。

この状態では、別の行のチェックを付けても、同じ判定セルが書き換わってしまいます。

複製後は、各チェックボックスのコントロールの書式設定を開き、リンクするセルがその行のC列になっているか確認しましょう。

行数が多い場合、セル内チェックボックスが使える環境なら、そちらを選ぶとリンクセルの個別設定を省けます。

フォームコントロールをB2からB10に置くなら、リンクセルもC2からC10へ一行ずつ対応させます。

 

クリックできない場合の確認項目

チェックボックスをクリックしても反応しない場合は、シートが保護されている可能性があります。

校閲タブのシート保護を確認し、必要に応じて保護を解除します。

また、デザインモードが有効になっていると、ActiveXコントロールではクリックしても通常の切り替えができません。

開発タブのデザインモードを確認し、有効なら解除してください。

フォームコントロールとActiveXコントロールは似ていますが、操作方法や動作が異なります。

特別なVBA処理が不要なら、通常はフォームコントロールまたはセル内チェックボックスを選ぶと扱いやすいでしょう

【操作のポイント】ずれ、連動、クリック不可の問題は、プロパティ、リンクセル、シート保護の順に確認します。

 

チェックボックスを使った進捗管理表の作成

タスク 期限 完了 進捗
企画案の作成 9月8日 完了
内容の確認 9月10日 未完了

続いては、チェックボックスと数式を組み合わせ、日常業務で使いやすい進捗管理表に仕上げる方法を確認していきます。

 

状態を自動表示するIF関数

完了判定がB列にある場合、状態をC列へ文字で表示すると、チェックマークの意味がより明確になります。

たとえばC2に次の数式を入力します。

=IF(B2=TRUE,”完了”,”未完了”)

IF関数は、指定した条件が正しいときと正しくないときで、表示内容を切り替える関数です。

この例ではB2がTRUEなら完了、FALSEなら未完了を表示します。

数式を入力後、セル右下のフィルハンドルを下へドラッグすると、3行目以降にも数式をコピーできます。

セル内チェックボックスを使う場合は、チェックボックスが入ったセル番地をそのままIF関数で参照できます

 

期限切れを目立たせる条件付き書式

期限を過ぎても未完了のタスクだけを赤く表示したい場合は、期限列と完了判定列を組み合わせます。

たとえば、A列がタスク名、B列が期限、C列が完了判定の表では、A2からD10を選択します。

条件付き書式の新しいルールで、数式を使用して書式設定するセルを決定を選択します。

=AND($B2<TODAY(),$C2=FALSE)

TODAY関数は、Excelを開いた日の年月日を返します。

AND関数は複数の条件がすべて成立した場合にTRUEを返すため、期限が今日より前で、かつ未完了の行だけを判定できます。

書式では薄い赤の塗りつぶしや濃い赤の文字を選ぶと、急いで対応すべき作業を見つけやすくなります。

期限のセルには日付として認識される値を入力することが、正しく判定する前提です

 

テーブル機能による入力範囲の拡張

進捗管理表を継続的に使うなら、表をテーブルに変換する方法も便利です。

表内を選択して挿入タブのテーブルを実行し、先頭行をテーブルの見出しとして使用する設定を確認します。

テーブルにすると、新しい行を追加したときに数式や書式が引き継がれやすくなります。

セル内チェックボックスを使用している場合も、新しい行へ機能を展開しやすくなります。

フォームコントロール型ではオブジェクトの追加が別途必要になることがあるため、運用前に一行追加して動作を試すと安心です。

進捗表では、タスク名、期限、完了判定、状態、担当者の順に列を用意すると情報を整理しやすくなります。

【操作のポイント】チェック結果はIF関数と条件付き書式へつなげると、入力表が実用的な進捗管理表になります。

 

まとめ エクセルでチェックボックスをセルに埋め込む方法

目的 適した方法
新しいExcelで簡単に管理 セル内チェックボックス
旧バージョンでも利用 フォームコントロール
集計や抽出を行う TRUEとFALSEの活用

エクセルでチェックボックスをセルに埋め込むには、利用しているExcelの機能に合わせて方法を選ぶことが大切です。

セル内チェックボックスに対応しているExcelでは、挿入タブから対象セルへ直接追加でき、チェック状態をTRUEとFALSEとして数式やフィルターにそのまま活用できます

従来のExcelでは、開発タブからフォームコントロールを挿入し、セルに合わせて移動するプロパティとリンクセルを設定します。

フォームコントロールは見た目だけで終わらせず、リンクセルを設定して初めて完了件数、完了率、未完了抽出といった管理に使えます。

COUNTIF関数でTRUEを数え、IF関数で状態を表示し、条件付き書式で完了や期限切れを色分けすれば、チェック欄は単なる印ではなくなります。

行の追加や並べ替えを行う予定がある表では、フォームコントロールのずれやリンクセルの重複にも注意しましょう。

チェックボックスとセルの関係を正しく設定することが、見やすく壊れにくいExcel管理表を作る近道です