
マクロボタンを作ったのはいいけど、位置や背景色・サイズが気に入らない…。
作ったマクロボタンを編集する方法を教えて!

なるほど…。
では今回は、位置や背景色など「マクロボタン編集でできること」を
VBAマクロ歴3年の私が、できるだけわかりやすく解説いたします。
エクセルのマクロボタン編集でできること
マクロボタンの編集方法を紹介する前に、マクロボタンの種類を解説いたします。
(ボタンによって編集方法が異なる場合があるため)
マクロボタンの種類
マクロボタンは、大きく分けて2つの種類があります。
- コントロールフォームボタン:初心者向け
- ActiveXコントロールボタン:中~上級者向け
簡単に作成できるのは「コントロールフォームボタン」ですが、「ActiveXコントロールボタン」はカスタマイズが豊富で柔軟な対応が可能です。
では、それぞれの編集方法を解説いたします。
コントロールフォームボタンの編集方法
まずは「コントロールフォームボタン」を作成します。
作成方法は下記記事で解説しております。ご参考ください。
【設置位置の変更】
ボタンを右クリックしながらドラッグ(押しながら移動)します。
設置したい場所でドロップする(右クリックを離す)ことで、位置を変えることができます。
「ここに移動」を選択してください。



【テキストの編集】
ボタンを右クリックします。
「テキスト編集」からボタンに表示されている文字を変更できます。

【サイズの変更】
ボタンを右クリックします。
「コントロールの書式設定」を選択します。

「サイズ」タブをクリックすると、ボタンの幅や高さなどを変更できます。

【文字色の変更】
ボタンを右クリック→「コントロールの書式設定」から変更できます。
「フォント」タブの「色」から好きな色を選択してください。

他にもフォントやフォントサイズを変更できます。
「コントロールの書式設定」で変更できることをまとめてみました。
- フォントタブ:フォント、文字サイズ・色、スタイルなどを変更できる
- 配置タブ:中央揃えや縦書きなど、文字の配置を設定できる
- サイズタブ:ボタンのサイズなどを変更できる
- 保護タブ:シートの保護がかかっているときに、編集をロックするかの設定ができる
- プロパティタブ:行や列の挿入・削除をした際、ボタンを移動・変形させるかの設定ができる
- 余白タブ:ボタン内部の余白を設定できる
- 代替テキストタブ:ボタンが正常に表示できないときのテキストを設定できる
しかしながら、「コントロールフォームボタン」では、ボタンの背景色を変えたりすることはできません。
背景色を変えたい場合は、次に紹介する「ActiveXコントロールボタン」を作成する必要があります。
ActiveXコントロールボタンの編集方法
まずは「ActiveXコントロールボタン」を作成します。
「開発」→「挿入(コントロールの挿入)」→「ActiveXコントロール」から「ボタン(左上)」を選択します。

どこでもいいので、エクセルの入力欄をクリックします。

「ActiveXコントロールボタン」が作成されました。

ボタンを「右クリック」→「コードの表示」を選択します。

「VBA project」の画面に移行しました。

「Private Sub CommandButton1_Click()」と「End Sub」の間に、ボタンを押したときに実行したいマクロを書きます。

今回は、A1セルにtest1と表示させる簡単なマクロを記述します。
Private Sub CommandButton1_Click()
Range("A1").Value = "test1" #コレを書く
End Sub
では本題の編集方法です。
まずは「プロパティ」を表示させます。
「表示」→「プロパティウィンドウ」をクリックしてください。

画面左下に「プロパティ」が表示されました。

現在はシートのプロパティになっているので、ボタンのプロパティを表示させます。
「Sheet1 Worksheet」を「CommandButton1 CommandButton」に変更してください。

これでボタンを編集できます。

【表示テキストの変更】
「Caption」がボタンに表示されているテキストに対応しています。
「Caption」の右にある「CommandButton1」を表示させたい文字に変更してください。

今回は「test1」に変えてみます。

ボタンを確認しましょう。

表示が変わりました。
【文字色の変更】
「ForeColor」が文字色に対応しています。
右側の▼をクリックします。

「パレット」をクリックし、好みの色を選択します。

今回は赤色にしました。

ボタンを見てみましょう。

文字色が変わりました。
背景色も「Back Color」を選択することで文字色と同様に変更することができます。
他にもプロパティから編集できるものを紹介いたします。
- プロジェクト名:ボタンの名前
- Accelerator:キーボードショートカットキーを指定
- Auto Load:特定の情報(画像や外部データなど)を読み込みするかを設定
- Auto Size:サイズ自動調整
- Back Color:ボタンの背景色
- Back Style:背景のスタイル(透明または不透明)
- Caption:ボタンに表示されるテキスト
- Enabled:ボタンの有効化・無効化
- Font:ボタンのフォント
- Fore Color:ボタンの文字色
- Height:ボタンの高さ
- Left:ボタンの左端の位置
- Locked:ボタンの編集や移動をロックするかを設定
- Muse Icon:ボタンに触れたときのマウスカーソルの種類を指定(矢印、手形など)
- Mouse Pointer:ボタンに触れたときのマウスカーソルをカスタマイズ
- Picture:ボタンに表示する画像を設定
- Picture Position:画像の位置指定
- Placement:ボタンがセルに合わせて移動するかを設定
- Point Object:クリックされた座標や位置を取得するかの設定
- Shadow:影のあるなし
- Take Focus On Click:ボタンがクリックされたときにフォーカスを取得するかを設定
- Top:ボタンの上端の位置
- Visible:ボタンの表示・非表示
- Width:ボタンの横幅
- Word Wrap:ボタンのテキストを改行するかを設定
うまくいかないときは、次項をご参考ください。
うまく動作しないときの対処法
ActiveXコントロールボタンの編集ができない
デザインモードがオフになっていると、ActiveXコントロールボタンのプロパティが表示されず、ボタンの編集ができません。
デザインモードがオンになっていることを確認してください。

プロパティウィンドウが真っ白になる
プロパティウィンドウを一旦閉じ、再度開くことで改善する場合があります。
最後に
エクセルのマクロボタンを編集する方法を解説いたしました。
編集をうまく活用して、自分好みのデザインを目指してみてください。
当ブログでは、VBAマクロやPythonなど、時間を生み出すプログラミング術を公開しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。
最後までお読みいただき、ありがとうございました。がんばってください!