エクセルマクロ(EXCEL VBA)

エクセルマクロ(EXCEL VBA) その9 ボタンを配置/マクロの調べ方

マクロの実行ボタンを配置する

ここまでで、セルの指定、For Nextによる繰り返し作業の仕込み方、IfとElseIfを使った条件分岐のやり方についてご紹介してきました。

これまで、Visual Basicのページの実行ボタンを押してマクロを実行させていたわけですが、エクセル側のページ内に、マクロの実行ボタンを配置することができます。

マクロに不慣れなメンバーにもマクロを実行してもらいやすくなるので、ボタンを配置してみましょう。

ボタンの配置の仕方

まず、開発タブを開いた状態で、
挿入→フォームコントロール→ボタン(フォームコントロール)を押します。

挿入 フォーム

すると、四角が書けるようになるので、
マウスでドラッグして適当な大きさの四角を書きます。

これでボタンになりました。

ボタン1ができた

クリックすると名前が変更できるようになるので、マクロの内容に合わせて修正しましょう。
エクセルのどこかのセルをクリックすると名前が確定します。

マクロの名前を修正

次に、ボタンの名前でないところ、ボタンの端っこあたりを右クリックするとメニューが出てくるので「マクロの登録」を押します。

マクロの登録

実行させたいマクロの名前を選んでOKを押します。

ボタンにマクロを登録

ボタンを押すとマクロが実行されるはずですので、試してみてください。

 

マクロの調べ方

For Nextと、Ifがあれば、かなりいろんなことができるようになるんですが、「こういう作業はどうしたらいいんだろう?」と、やり方を調べたいときがあります。

そういう時は、

VBA +(やりたいこと)

で検索すると、先人の知恵がたくさん検索結果に出てきます。

例えば、セルB2に入った文字を赤にしたいんだけど、マクロではなんて書けばいいんだろう?と思ったら、

VBA + 文字色

と検索してみてください。
いろいろと結果が出てきますが、
どうやら B2の文字色を赤にするには

Cells(2, 2).Font.Color = RGB(255, 0, 0)

のように書けばいいようですね。

という感じで調べることができますので、困ったらVBA+(やりたいこと)で検索してみてください。

 
これまで一つのシートでやってきましたが、次回は複数のシートを操作するやり方についてご紹介します。

 

宿題-9

セルの背景を濃い青色に、文字色を白にする方法を調べてみてください。

エクセルマクロ(EXCEL VBA) その10 複数のシートを使う方法

(文:森脇孝/エントレ)

関連記事一覧