【Excel VBA】色付きのボタンでマクロを実行する

+IT 清水です。

「マクロを実行するボタンに色をつけたいです」という質問をいただいたので、
今回は、図形にマクロを登録して「色付きのボタン」を作ります。
ちなみにマクロをボタンに登録すると

  1. マクロの実行が容易になる(ダイアログボックスが開かない)
  2. 直感的に操作できる

というメリットがあります。

図形にマクロを登録する

登録するマクロはあらかじめ作成しておきます。
今回は、画面にメッセージボックスを表示する「DisplayMessageBox」を例として作成しておきました。
この時、「Public Sub マクロ名()」もしくは「Sub マクロ名()」としてください。
「Private Sub マクロ名()」だとExcelから呼び出すことができません。
(※ボタンを押したときにマクロに引数を渡すこともできますが、今回は割愛。)

次に図形を用意します。直感的に押せることが理解できる形が望ましいです。
ここでは、角が丸い四角形を使用します。

次に、色を変えます。影付きのボタンっぽい見た目にしました。図形のスタイルからサンプルを選択できます。

ボタン名を入力します。今回は「ここをクリック」としました。
文字の大きさ・配置等はホームタブにあるフォントや配置から変更できます。

最後に先ほど作った図形にマクロを登録します。
図形を右クリックし、「マクロの登録」を選択します。

すると、マクロの登録ダイアログが表示されるので、あらかじめ作っておいたマクロを選択し、OKを押します。

これで、図形にマクロを登録することができました。
図形をクリックするとマクロが実行されます。

どんな図形にもマクロを登録することができます。

ちなみに、開発タブ→挿入→ActiveXボタンにも色付きのボタンにマクロを登録することができますが、 ActiveXボタンは壊れやすく、端末によってボタンが動作しなかったりすることがあり、お勧めできません。
特に理由がない場合は使用しないほうが無難です。