エクセルのチェックボックスをセルに埋め込む方法と様々な設定方法
本記事では、VBAを使ってエクセルのチェックボックスをセルに埋め込む方法や埋め込んだチェックボックスを編集する様々な設定方法について説明します。
VBAを使えば、チェックボックスをセルに埋め込むだけでなく、文字色や背景色などのデザインも変えることができます。これを機会に覚えておくと良いでしょう。
チェックボックスの作り方

エクセルのチェックボックスとは、画像のようにクリックすることでチェックマークが入る小さな四角い枠を作成する機能のことです。
エクセルでチェックボックスを作成する方法が分からない方は、以下の記事「チェックボックスの作り方」セクションをご参照ください。
エクセルのチェックボックスをセルに埋め込む方法
このセクションでは、エクセルのチェックボックスをセルに埋め込むためのVBAサンプルコードと埋め込むための手順について説明します。
事前準備
VBAを使ってエクセルのチェックボックスをセルに埋め込みたい方は、事前準備としてマクロの有効化とVBAコードの確認を行っておきましょう。
マクロを有効化する
マクロの登録を行うには、エクセルファイルを最初にマクロ有効ブックとして保存する必要があります。
下記記事の「マクロ有効ブックとして保存する」セクションでは、エクセルのファイルをマクロ有効ブックとして保存する方法について解説していますのでご参照ください。
開発タブを表示する
エクセルには、初期設定で「開発」タブはありません。「開発」タブはVisual BasicでVBAのコードを入力する時に必要です。
以下の記事では「開発」タブの表示方法について解説しています。どうぞご覧ください。
VBAコードを確認する
チェックボックスをVBAで作成したい方は、以下のサンプルコードをご参照ください。
以下のサンプルコードに特定のコードを追加/変更することにより、テキスト、文字色、太字、背景色などを設定することができます。
Sub Embed_CheckBox()
'画面更新停止
Application.ScreenUpdating = False
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, DisplayAsIcon:=False)
.Width = ActiveCell.Width
.Height = ActiveCell.Height
End With
'画面更新再開
Application.ScreenUpdating = True
End Sub
チェックボックスをセルに埋め込む手順
VBAを使ってエクセルのチェックボックスをセルに埋め込む方法については、以下のとおりです。
作業時間:2分
マクロ有効化ブックを開く
エクセルファイル(マクロ有効化ブック)を開きます。
Visual Basicを選択する
①【チェックボックスを入力したいセル】、②【開発】タブ、③【Visual Basic】の順に選択します。
コードを選択する
「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。
VBAコードを入力する
①「Book1.xlsm – Module1(コード)」に『VBAのコード』を入力し、②【Sub/ユーザー フォームの実行】を選択し、③【×】ボタンを押します。
チェックボックスをセルに埋め込む
VBAを使ってチェックボックスをセルに埋め込みました。
VBAを使った様々なチェックボックス埋め込みの設定方法

チェックボックスの埋め込みを行う際、VBAコードを使用してテキスト、文字色、太字、背景色を設定することができます。
下記では、VBAを使った様々なチェックボックス埋め込みの設定方法について説明します。
以下のサンプルコードを基に、チェックボックスの様々な設定を行っていきます。
Sub Embed_CheckBox()
'画面更新停止
Application.ScreenUpdating = False
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, DisplayAsIcon:=False)
.Width = ActiveCell.Width
.Height = ActiveCell.Height
End With
'画面更新再開
Application.ScreenUpdating = True
End Sub
テキストを入力する
VBAを使って、エクセルのセルに埋め込んだチェックボックスにテキストを入力してみましょう。

すでにVBAのコードが入っているエクセルファイルを開きます。
①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。
「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。

「Book1.xlsm – Sheet1(コード)」が表示されました。
上図の位置に『以下のコード』を入力します。
.Object.Caption = "持ちました!"

①【Sub/ユーザー フォームの実行】を選択し、②【×】ボタンを押します。

VBAで「持ちました!」のテキストが埋め込まれました。
文字色を設定する
VBAを使って、チェックボックスに埋め込まれたテキストの文字色を変更してみましょう。

すでにVBAのコードが入っているエクセルファイルを開きます。
①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。
「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。

「Book1.xlsm – Sheet1(コード)」が表示されました。
上図の位置に『以下のコード』を入力します。
.Object.ForeColor = rgbRed
主なカラーの種類については、以下の表をご参考ください。
色 | 定数 | RGB(赤,緑,青) |
---|---|---|
黒 | rgbBlack | 0, 0, 0 |
青 | rgbBlue | 0, 0, 255 |
緑 | rgbGreen | 0, 128, 0 |
紫 | rgbPurple | 128, 0, 128 |
赤 | rgbRed | 255, 0, 0 |
白 | rgbWhite | 255, 255, 255 |
黄 | rgbYellow | 255, 255, 0 |

①【Sub/ユーザー フォームの実行】を選択し、②【×】ボタンを押します。

テキストの文字色が赤に変更されました。
太字を設定する
VBAを使って、チェックボックスに埋め込まれたテキストを太字に変更してみましょう。

すでにVBAのコードが入っているエクセルファイルを開きます。
①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。
「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。

「Book1.xlsm – Sheet1(コード)」が表示されました。
上図の位置に『以下のコード』を入力します。
.Object.Font.Bold = True

①【Sub/ユーザー フォームの実行】を選択し、②【×】ボタンを押します。

チェックボックスの文字が太字に変更されました。
背景色を設定する
VBAを使って、チェックボックスに埋め込まれたテキストの背景色を変更してみましょう。

すでにVBAのコードが入っているエクセルファイルを開きます。
①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。
「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。

「Book1.xlsm – Sheet1(コード)」が表示されました。
上図の位置に『以下のコード』を入力します。
.Object.BackColor = rgbYellow
主なカラーの種類については、以下の表をご参考ください。
色 | 定数 | RGB(赤,緑,青) |
---|---|---|
黒 | rgbBlack | 0, 0, 0 |
青 | rgbBlue | 0, 0, 255 |
緑 | rgbGreen | 0, 128, 0 |
紫 | rgbPurple | 128, 0, 128 |
赤 | rgbRed | 255, 0, 0 |
白 | rgbWhite | 255, 255, 255 |
黄 | rgbYellow | 255, 255, 0 |

①【Sub/ユーザー フォームの実行】を選択し、②【×】ボタンを押します。

チェックボックスがあるセルの背景色が変更されました。
また、VBAではなく条件付き書式の設定方法ですが、チェックマークを入れることでチェックボックスがあるセルの背景を塗りつぶす方法もあります。
チェックボックスをオンにしたときにセルの背景が自動的に塗りつぶされるように設定すると、チェックの有無を簡単に確認できるようになります。
フォントサイズを変更する
VBAを使って、チェックボックスに埋め込まれたテキストのフォントサイズを変更してみましょう。

すでにVBAのコードが入っているエクセルファイルを開きます。
①【開発】タブ、②【Visual Basic】の順に選択します。

「Microsoft Visual Basic for Applications – Book1.xlsm」ダイアログボックスが表示されました。
「Book1.xlsm – Sheet1(コード)」が表示されていない場合は、①【表示】タブ、②【コード】の順に選択します。

「Book1.xlsm – Sheet1(コード)」が表示されました。
上図の位置に『以下のコード』を入力します。
.Object.Font.Size = 13

①【Sub/ユーザー フォームの実行】を選択し、②【×】ボタンを押します。

テキストのフォントサイズが13に変更されました。
ディスカッション
コメント一覧
まだ、コメントがありません