エクセルでチェックボックスを連動する手順をわかりやすく解説

エクセルでチェックボックスを連動すると便利になるって聞いたんですけど、どんなことができるんですか?

チェックボックスを他のセルに連動させると、チェックした数を表示させたり、チェックしたセルの数字だけを合計させたり、いろいろなことができるようになるよ。
エクセルでチェックボックスを連動すると、レ点を入れる以外の機能が使えるようになります。
また、Office365からはチェックボックスの機能が新しくなり、チェックボックスを挿入するだけでセルと連動されるようになっています。
- 「開発」タブからフォームコントロールを使ってチェックボックスを挿入
- 挿入したチェックボックスを右クリックして、「コントロールの設定」から「リンクするセル」を指定
- 同じ手順ですべてのチェックボックスに「リンクするセル」を設定する
- 「TRUE」・「FALSE」が表示される
他のセルと連動させておくと、チェックボックスがさらに便利になります。
本記事では、2021以前のエクセルとOffice365から使えるようになった新しいチェックボックスの使い方を分けて解説していますので、目次から使用しているエクセルのバージョンの項目にジャンプしてご覧ください。
連動して使う以外の機能を詳しく解説しているチェックボックスの記事もおすすめです。
エクセルでチェックボックスを連動する手順
Office365からチェックボックスの機能が新しく変わりました。

従来のチェックボックスと新しくなったチェックボックスは何が違うんですか?
チェックボックスの挿入方法も変わったんだけど、セルを連動する手順も従来の方法とは違うんだ。
2021以前のエクセルを使用している場合は、チェックボックスと他のセルを連動させる場合は、「コントロールの書式設定」から連動するセル番地を指定します。
一方、Office365またはエクセル2024を使用している場合は、設定を変更せずにセルを連動できます。
バージョン別に手順を解説していきますので、使用しているエクセルのバージョンの項目をご確認ください。
2021以前のエクセルを使用している場合
2021以前のエクセルでチェックボックスを連動する場合は、「チェックボックスの書式設定」から「リンクするセル」の設定をします。
操作を始める前に、チェックボックスを挿入した表を作成しておきましょう。
チェックボックスを挿入する手順は、チェックボックスの作り方で詳しく解説していますので、こちらを参考にしてみてください。
- チェックボックスを右クリック
- 「コントロールの書式設定」を選択
うまくできないときは、Ctrlを押しながらチェックボックスをクリックしたあとに右クリックしてみてね。
- 「コントロール」タブをクリック
- 値の「オン」・「オフ」は、自動で選択される
- 「リンクするセル」の枠内をクリック
- 「TRUE」・「FALSE」を表示させたいセルを選択
- 「OK」を押す
チェックボックスにレ点を入れると「TRUE」が、チェックを外すと「FALSE」と表示されるようになりました。
残りのチェックボックスも同じ手順で「リンクするセル」の設定をしましょう。
「TRUE」・「FALSE」が表示されないときは、「リンクするセル」を設定したあとに、チェックボックスのチェックを「ON」または「OFF」にする操作をしてみてね。
Office365またはエクセル2024を使用している場合
Office365またはエクセル2024の新しい機能でチェックボックスを挿入した場合は、設定を変更しなくてもセルと連動できます。
Office365またはエクセル2024では、チェックボックスにレ点を入れると、数式バーに「TRUE」と表示されるようになりました。
新しいチェックボックスは、チェックボックスが挿入されているセルと自動的に連動されるので、特に設定を変更する必要はありません。
チェックボックスを一括で連動したい場合はVBAで設定する必要がある
「コントロールの書式設定」で設定したリンク先のセル番地は、数式や他の関数のようにセルの位置を1つずつずらしてコピーすることができません。
通常のセル参照の場合、「C1」の計算式をオートフィルハンドルでコピーするとセル番地が1つずつずれた状態になります。

「リンクするセル」って絶対参照で表示されますよね?セル番地を絶対参照から相対参照に変更すれば、コピーできるんじゃないですか?
「リンクするセル」のセル番地を相対参照に変えても、セル番地をずらすことはできないんだ。
これは、「リンクするセル」のセル番地を絶対参照から相対参照に変えたあとに、チェックボックスをコピーした画像です。
「リンクするセル」を設定したときに自動で表示される「$」の記号を削除してからコピーしても、「$」マークのないセル番地がコピーされるだけで結果は変わりません。
つまり、残念ながら「リンクするセル」の設定は「コピーできない」ということです。
「リンクするセル」の設定を1つずつやるのは大変なので、一括で連動させる方法はないんですか?
VBAを使うと一括で設定することはできるんだけど、プログラミング言語の知識がない場合はあまりおすすめしないよ。
VBAを使う場合は、「Microsoft Visual Basic for Applications」を使い、チェックボックスが連動されるように命令文を記述して設定します。
ただし、記述した命令文に間違いがあった場合は、正常に設定することができません。
プログラミング言語の知識があればエラー箇所を見つけて修正することが可能ですが、知識がない場合は見つけるのが困難です。
特に同じデータを複数名で共有する場合は、便利にするために設定したつもりの機能が、他の人にとっては逆に使いにくくなってしまうことがあるから注意しよう!
専門的な知識が必要なVBAや複雑な関数の使用は、できるだけ避けることをおすすめします。
参考
VBAを使って一括でセルを連動する方法を簡単に紹介します。
- 「開発」タブをクリック
- 「Visual Basic」を選択
- 「挿入」タブをクリック
- 「標準モジュール」を選択
表示された枠内に下記の内容をコピーして貼り付け、Microsoft Visual Basicのすべての画面を閉じます。
Sub チェックボックスの連動()
Dim i As CheckBox
For Each i In ActiveSheet.CheckBoxes
i.LinkedCell = i.TopLeftCell.Address
Next i
End Sub
このマクロが行っている動作は次のとおりです。
- 変数iにチェックボックス名を設定する
- ①で指定したチェックボックスと、チェックボックスが置かれているセルをリンクさせる
- ②の設定がまだ行われていないチェックボックスを探す
- ①~③の処理を繰り返す
「リンクするセル」の設定を、私たちの代わりにマクロが一つひとつ行っています。
そのため、最初に「Dim i As CheckBox」と宣言してiがチェックボックスであることをマクロに教えてあげることで、マクロが悩まなくなります。その分、マクロのスピードが速くなります。
- 「開発」タブをクリック
- 「マクロ」を選択
「チェックボックスの連動」が選択されていることを確認して、「実行」をクリックします。
すべてのチェックボックスで「ON」または「OFF」の操作を行うと、上記のように「TRUE」または「FALSE」が表示されます。
「TRUE」または「FALSE」の文字を表示したくない場合は、フォントの色を白に変更しておきましょう。
- チェックボックスが挿入されている範囲を選択
- 「フォントの色」を選択
- 「白」をクリック
フォントの色を白に変えると、チェックボックスだけを残して他の文字を見えなくすることができます。
必要に応じてセルの幅の調整をしてください。
ファイル形式を「Excelマクロ有効ブック」に変更してから保存しましょう。
業務の俗人化・セキュリティ面の観点から、会社でのマクロ使用が禁止されている場合があります。
マクロを使用する場合は、管理者の承諾を得てから使用するようにしてください。
チェックボックスを連動させずにコピーする方法
チェックボックスをコピーしたんですけど、1つだけにチェックを入れたいのに、全部にチェックマークがついてしまうんです。直す方法を教えてください。
コピーの手順を間違えると、チェックボックス同士が連動してしまうんだ。正しいコピーの手順を覚えれば、簡単に直せるから安心してね。
コントロールの書式設定で「リンクするセル」の設定したあとにコピーすると、すべてのチェックボックスが連動してしまいます。
チェックボックスが連動してしまうときは、任意のチェックボックスを右クリックして「コントロールの書式設定」の画面を開き、「リンクするセル」に同じセル番地が入っていないか確認してみましょう。
コントロールの書式設定を確認したら、全部同じセル番地が入っていました。
「リンクするセル」の設定をする前にコピーすれば、チェックボックス同士が連動しなくなります。
チェックボックス同士を連動させずにコピーする正しい手順を解説します。
チェックボックスを右クリックして、「リンクするセル」に何も入っていないことを確認しておきます。
セルをアクティブの状態にしたら、オートフィルハンドルでコピーしてください。
チェックボックスを連動する場合は、コピーをしたあとに「リンクするセル」の設定を行いましょう。
連動したチェックボックスとIF関数を組み合わせると別の文字を表示できる
セルを連動して表示した「TRUE」・「FALSE」と、IF関数を組み合わせると別の文字を表示できます。
こちらの画像のように、「TRUE」・「FALSE」を別の文字に置き換えておくと、レ点の意味がわかりやすくなるのでおすすめです。
2021以前のエクセルを使用している場合
2021年のエクセルを使用している場合は、「リンクするセル」で表示させた「TRUE」・「FALSE」を使ってIF関数を挿入します。
文字を表示するセルを決めます。
「F4」のセルをクリックして「=IF(E4,”出席”,”欠席”)と入力し、Enterで確定してください。
IF関数の論理式は、「TRUE」・「FALSE」が表示されているセル番地を指定しよう!
「F4」を選択しなおして、オートフィルハンドルで計算式をコピーしたら完成です。
Office365またはエクセル2024を使用している場合
Office365またはエクセル2024を使用している場合は、チェックボックスを挿入したセル番地を使ってIF関数を挿入します。
文字を表示する列を追加します。
「E4」を選択して、「=IF(B4,”出席”,”欠席”)」と入力し、Enterで確定します。
IF関数の論理式は、チェックボックスが挿入されているセル番地を指定するよ。
「E4」を選択しなおして、オートフィルハンドルで計算式をコピーしてください。
書式が崩れてしまうため、書式のコピー&貼り付けをしておきましょう。
- 書式が崩れていない氏名の範囲を選択
- 「ホーム」タブをクリック
- 「書式のコピー/貼り付け」を選択
- IF関数を挿入した範囲をドラッグする

書式を設定した表をオートフィルでコピーする場合は、この方法を覚えておくと便利だよ。
チェックボックスにCOUNTIF関数を挿入してチェックの数をカウントする
チェックボックスとCOUNTIF関数を組み合わせると、チェックの数をカウントすることができます。
COUNTIF関数を使ったことがない場合でも、操作自体はそれほど難しくはないので挑戦してみてください。
2021以前のエクセルを使用している場合
2021以前のエクセルを使用している場合は、「TRUE」・「FALSE」が表示されているセル番地を指定してCOUNTIF関数を挿入します。
COUNTIF関数を挿入して、このような表を作成してみましょう。
「H3」をクリックして「=COUNTIF(E4:E19,”TRUE”)」と入力し、Enterで確定します。
COUNTIFの範囲は、「TRUE・FALSE」が表示されている範囲を指定するよ。
「H4」をクリックして「=COUNTIF(E4:E19,”FALSE”)」と入力し、Enterで確定してください。
出席者と欠席者の人数が表示されました。
Office365またはエクセル2024を使用している場合
Office365またはエクセル2024を使用している場合は、チェックボックスを挿入したセル番地を使ってCOUNTIF関数を挿入します。
「H3」に「=COUNTIF(B4:B19,”TRUE”)」と入力し、Enterで確定します。
Office365はチェックボックスを挿入したセルと同じ場所が連動しているから、チェックボックスを挿入した範囲を選択するよ。
「H4」に「=COUNTIF(B4:B19,”FALSE”)」と入力し、Enterで確定したら完了です。
チェックボックスと連動した数字が表示されました。
COUNTIF関数を挿入しておくと、チェックしたセルとチェックしていないセルの数が簡単に集計できるので、活用してみてください。
チェックボックスにSUMIF関数を挿入して合計を計算する
チェックを付けた項目だけを合計したいときは、チェックボックスとSUMIF関数を組み合わせましょう。
SUMIF関数を組み合わせると、上記の画像のようにチェックを付けた枠の数字の合計値を計算することができます。
SUMIF関数の構文は、「=SUMIF(「条件が入力されている範囲」,「条件」、「合計範囲」)です。
IF関数の論理式では、「TRUE」を文字として扱わないため「セル番地だけ」を入力します。
しかし、SUMIF関数では文字として扱うので、条件の引数は「”TRUE”」のように「TRUE」をダブルクォーテーションで囲んで指定します。
関数を挿入する前に、IF関数とSUMIF関数の違いを理解しておきましょう。
2021以前のエクセルを使用している場合
2021以前のエクセルを使用している場合は、セルを連動させて表示した「TRUE」・「FALSE」を使ってSUMIF関数を挿入します。
「E14」のセルを選択し、「=SUMIF(D4:D12,”TRUE”,E4:E12)」と入力してEnterで確定します。
引数の入力方法がわからない場合は、≫チェックボックスにSUMIF関数を挿入して合計を計算するの画像を確認してみてね。
チェックを付けた赤枠の数字だけを合計することができました。
Office365またはエクセル2024を使用している場合
Office365またはエクセル2024を使用している場合は、チェックボックスを挿入したセルを使ってSUMIF関数を入力します。
条件を指定する範囲は変わりますが、基本的な手順は2021以前のエクセルと同じです。
合計のセルに「=SUMIF(B4:B13,”TRUE”,D4:D13)」を入力して、Enterを押します。
チェックが入った赤枠のセルの数字を合計することができました。
エクセルのチェックボックスを別のシートのセルと連動する
チェックボックスのコントロールの書式設定を使うと、別のシートのセルと連動することができます。
ただし、Office365またはエクセル2024の新しいチェックボックスは、チェックボックスを挿入したセルが自動的に連動するようになっています。
別のシートのセルと連動したい場合は、「開発」タブにあるフォームコントロールを使ってチェックボックスを挿入してください。
「リンク元」と「リンク先」のシートを作成します。
「リンク元」のシートには、フォームコントロールで作成したチェックボックスを挿入し、「リンク先」シートには「TRUE・FALSE」が挿入できる列を入れた表を作成しておきましょう。
シート名は、わかりやすい名前に変えてもOKだよ。
- 「リンク元」のチェックボックスを右クリック
- 「コントロールの書式設定」を選択
- 「コントロール」タブをクリック
- 「リンクするセル」の枠内をクリックする
- 「リンク先」のシートを押す
- 「リンク先」タブの「TRUE」・「FALSE」を表示するセルを選択
- 「OK」を選択する
- リンク先のシートをクリック
- 設定したセルに「TRUE」が表示された
すべてのチェックボックスで同じように設定すると、「リンク先」のシートのセルに上記のように「TRUE」・「FALSE」が表示されます。
エクセルのチェックボックスを連動するに関するQ&A
- エクセルのチェックボックスをセルと連動させる方法を教えてください。
-
Office365からチェックボックスの機能が新しくなったため、2021以前のエクセルを使用している場合とOffice365のエクセルを使用している場合では、チェックボックスを連動させる手順が違います。
≫エクセルでチェックボックスを連動する手順でエクセルのバージョン別に詳しく解説していますので、こちらをご覧ください。
- エクセルでチェックボックスを一括連動させることはできますか?
-
Office365の新しいチェックボックスを挿入する場合は、自動的にセルと連動されるため、チェックボックスをコピーするだけで一括で連動することができます。
2021以前のエクセルでチェックボックスを一括で連動したい場合は、VBAを使う必要があります。
ただし、VBAを使う方法は「Microsoft Visual Basic for Applications」に命令文を記述して設定する必要があるため、プログラム言語の知識がない場合はこちらの方法はあまりおすすめできません。
≫チェックボックスを一括で連動したい場合はVBAで設定する必要があるでVBAを使った方法を参考として紹介しています。
セルに連動させて集計ができるチェックボックスを作成しよう!
チェックボックスは、クリックするとレ点が入れられるだけではありません。
セルと連動しておくことで、レ点の数をカウントしたり、レ点が入ったセルだけを合計したりできるようになります。
Office365から新しくなったチェックボックスは、設定を変更せずにセルと連動できるのでぜひ活用してみてください。
最後に、2021以前のエクセルでチェックボックスを連動させる手順をおさらいしておきましょう。
- 「開発」タブからフォームコントロールを使ってチェックボックスを挿入しておく
- 挿入したチェックボックスを右クリックして、「コントロールの設定」から「リンクするセル」を設定する
- 同じ手順ですべてのチェックボックスに「リンクするセル」の設定を行う
- 指定したセルに「TRUE」・「FALSE」が表示される
チェックボックスを連動させて、IF関数、COUNTIF関数、SUMIF関数と組み合わせると、チェックボックスの活用の幅を広げることができます。
チェックボックスを連動させる方法をマスターして、集計ができるチェックボックスを作成してみましょう。
連動して使う以外の機能を詳しく解説しているチェックボックスの記事もぜひチェックしてみてください。