ユーザーフォームに配置したコマンドボタンに表示されるキャプションは「文字」なのですが、複数のボタンが並んでいる時は「文字」ではなく「画像」で表示させたいと思ったことありませんか?
JPEG画像・BMPファイルなどを用意すれば、意外と簡単にコマンドボタンの文字の部分を画像にすることができますので、設定方法をご紹介いたします。
Picture設定で画像選択
コマンドボタンに画像を設定する方法は2つあり、プロパティ設定で済ませる方法とVBAコードを記述して設定する2つの方法があります。
プロパティで画像設定
何かしらの条件によってコマンドボタンに設定した画像を変更させるような事が無く、常時表示させるならばVBAコードを記述しなくてもプロパティから設定することができますので、とても簡単です。
ユーザーフォームに配置したコマンドボタンをクリックすると、VBA画面左下にコマンドボタンのプロパティが表示されます。
アルファベット順に項目(オブジェクト)が並んでいるので、真ん中ぐらいに「Picture」があります。
その右側の空欄の更に右端に「…」という部分をクリックします。
「…」をクリックすると自動的にダイアログが表示されるので、設定したい保存場所にあるフォルダーから画像ファイルを選択し、開くをクリックして設定します。
すると、プロパティのPictureの空欄だった場所に(ビットマップ)と表示され、コマンドボタンに画像表示設定が完了します。
画像変更・消去
ちなみにプロパティで設定した画像を変更するならば、上記の手順で再度行えば画像変更はできます。
また、設定済みの画像を消去して、元の文字(キャプション)にするには、画像設定により表示された「ビットマップ」にカーソルを合わせてクリックしてから、「delete」キーを押せば画像消去できます。
VBAコードで画像設定
LoadPicture関数を使う事により、ユーザーフォームを開いた時に自動的にコマンドボタンの文字を画像に変更したり、コマンドボタンをクリックしたら画像に切り替わるように設定することができます。
Private Sub CommandButton1_Click()
CommandButton1.Picture = LoadPicture(“C:\Users\tripbowl\VBA用画像\train.jpg”)
End Sub
- コマンドボタン1がクリックされたら
- コマンドボタン1の画像は()内に指定された画像ファイルに設定する
- マクロ記録終了
ここで少しややこしいのが、画像ファイル名を正確に記述しなくてはいけない事です。
画像ファイル名が「train.jpg」なのですが、これだけではマクロエラーになりますので、どこのドライブのどこのファイルに保存されている「train.jpg」ファイルまで必要になります。
画像ファイル名の調べ方
それほど難しくはなく正確なファイル名もコピペできるので簡単です。
表示している画像ファイルにマウスを合わせて、右クリックをするとダイアログが表示されるので、一番下のプロパティをクリックします。
画像のプロパティダイアログが表示され、真ん中あたりに「場所:」という項目があります。
その右側にC:・・・・・・と続く(ここではCドライブに保存されているの画像なのでC:と表示)文字が正確な保存されているファイル名になります。
長いファイル名の上でクリックしてから右クリックをすると、ダイアログが表示されるので、「すべて選択」をクリックするとファイル名全体が青色になり選択状態になるので、コピーしてVBAコードに張り付ければ完成です。
コマンドボタンのキャプションを文字から画像にすると見栄えが変わるので、見つけやすくなるのでコピペして活用してみてはいかがですか?
関連記事
-
コマンドボタン
コマンドボタンの表示文字(キャプション)を2行に改行表示する方法
エクセルで作業効率化の為に作ったオリジナルの入力フォーム(ユーザーフォーム)に配置したコマンドボタンの表示名を1行表示ではなく、改行して2行表示にしたいと思っ… -
コマンドボタン
コマンドボタンのキャプションを文字ではなく画像にする2つの方法
ユーザーフォームに配置したコマンドボタンに表示されるキャプションは「文字」なのですが、複数のボタンが並んでいる時は「文字」ではなく「画像」で表示させたいと思… -
コマンドボタン
コマンドボタンの文字を名前・出席・欠席と繰り返し変更する方法
名前が表示させているコマンドボタンを1回押すと「出席」、もう1回押すと「欠席」、さらに1回押すと再び名前表示するようにコマンドボタンのキャプションを変更させたい… -
コマンドボタン
VBAコマンドボタンにホームページURLを開く設定をする方法
ホームページのURLアドレスをユーザーフォームのコマンドボタンに登録して、クリックすると指定したホームページが別ウィンドウで開くようにしたいと思ったことありませ… -
コマンドボタン
エクセルVBAコマンドボタンでON/OFF切替スイッチを作る方法
ワークシート上にある罫線やリボンなど7つの項目を表示したり非表示することができる切替ボタンがあったら便利だと思いませんか? 不要な項目をワンクリックで切り替え… -
コマンドボタン
複数一括処理でコマンドボタンのキャプションをセルの値に書き換える方法
ユーザーフォームに複数配置したコマンドボタンの名前を1個ずつ書くのは意外と面倒なので、セルの値から自動的に取得して書き換えができたら便利だと思いませんか? エ… -
コマンドボタン
コマンドボタンの色をクリックするたびに黒色と赤色を入れ替える方法
ユーザーフォームに配置したコマンドボタンの文字色を条件に応じて変更したいと思いませんか? Excel-VBAのForeColorプロパティとStaticステートメントを使うことで、コ…
紅葉スポット
-
花園渓谷の花園神社紅葉ライトアップへ磯原駅から観光周遊バスで行く
茨城県の最北端にある北茨城市でもう少し北上すれば福島県という位置なので、東京からだとかなり遠いですが、山間部の花園花貫県立自然公園という名の通り大自然の中を… -
足利駅から織姫公園のもみじ谷へ電車とバスで紅葉絶景へ
【紅葉見頃】11月中旬~12月上旬 もみじ谷のある織姫公園へ足利市のコミュニティーバスを利用して気軽に訪れることができ、公園内には1,000本のもみじが植えられてい… -
白いアーチ橋の六方沢橋と紅葉へ日光駅からバスで滞在時間20分
霧降高原にある六方沢橋バス停から歩道を300mほど歩くと六方沢橋に行くことができ紅葉絶景が眼下に広がり、さらに400m歩いた六方沢展望台では遠くのダム湖や今市市街を… -
赤城公園でハイジのブランコと赤城神社へ赤城山の紅葉絶景へ
日本百名山の1つでもある赤城山は標高1,800mほどに位置し、群馬県を代表する名山です。 特に山頂部の火山の爆発でできたカルデラ湖の大沼周辺は、県立赤城公園として観… -
乗り鉄必見の紅葉列車でわたらせ渓谷鉄道車窓の紅葉景色へ
【紅葉見頃】11月上旬~11月下旬 旧国鉄・足尾線を引き継いだわたらせ渓谷鉄道は、渡良瀬川沿いを走るローカル線で渓谷沿いの紅葉がとても綺麗に見ることができるので… -
フリーきっぷで行く12月が見頃の関東近郊の紅葉スポット
渋滞避けて電車とバスでお得なフリーパスや1日乗車券を使って、のんびり紅葉を見に行きませんか? 温暖化の影響で12月上旬でも関東南部では紅葉を見られる場所がまだま…