ユーザーフォームに配置したコマンドボタンに表示されるキャプションは「文字」なのですが、複数のボタンが並んでいる時は「文字」ではなく「画像」で表示させたいと思ったことありませんか?
JPEG画像・BMPファイルなどを用意すれば、意外と簡単にコマンドボタンの文字の部分を画像にすることができますので、設定方法をご紹介いたします。
Picture設定で画像選択
コマンドボタンに画像を設定する方法は2つあり、プロパティ設定で済ませる方法とVBAコードを記述して設定する2つの方法があります。
プロパティで画像設定
何かしらの条件によってコマンドボタンに設定した画像を変更させるような事が無く、常時表示させるならばVBAコードを記述しなくてもプロパティから設定することができますので、とても簡単です。
![コマンドボタンプロパティ](https://tripbowl.net/wp-content/uploads/2023/09/81cddf05ba6d22165374b1c501570be0-1024x682.jpg)
ユーザーフォームに配置したコマンドボタンをクリックすると、VBA画面左下にコマンドボタンのプロパティが表示されます。
![コマンドボタンプロパティpicture](https://tripbowl.net/wp-content/uploads/2023/09/799b877e35baeeaf31519e87b6366dfd-1024x682.jpg)
アルファベット順に項目(オブジェクト)が並んでいるので、真ん中ぐらいに「Picture」があります。
その右側の空欄の更に右端に「…」という部分をクリックします。
![コマンドボタンプロパティpictureダイアログ](https://tripbowl.net/wp-content/uploads/2023/09/cfdc76ce0f96b63f718a7ee4b65a1abc-1024x682.jpg)
「…」をクリックすると自動的にダイアログが表示されるので、設定したい保存場所にあるフォルダーから画像ファイルを選択し、開くをクリックして設定します。
すると、プロパティの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コードに張り付ければ完成です。
![](https://tripbowl.net/wp-content/uploads/2018/07/cropped-512x512.jpg)
コマンドボタンのキャプションを文字から画像にすると見栄えが変わるので、見つけやすくなるのでコピペして活用してみてはいかがですか?
関連記事
-
コマンドボタンのキャプションを文字ではなく画像にする2つの方法
ユーザーフォームに配置したコマンドボタンに表示されるキャプションは「文字」なのですが、複数のボタンが並んでいる時は「文字」ではなく「画像」で表示させたいと思… -
コマンドボタンの文字を名前・出席・欠席と繰り返し変更する方法
名前が表示させているコマンドボタンを1回押すと「出席」、もう1回押すと「欠席」、さらに1回押すと再び名前表示するようにコマンドボタンのキャプションを変更させたい… -
コマンドボタンの表示文字(キャプション)を2行に改行表示する方法
エクセルで作業効率化の為に作ったオリジナルの入力フォーム(ユーザーフォーム)に配置したコマンドボタンの表示名を1行表示ではなく、改行して2行表示にしたいと思っ… -
エクセルVBAコマンドボタンでON/OFF切替スイッチを作る方法
ワークシート上にある罫線やリボンなど7つの項目を表示したり非表示することができる切替ボタンがあったら便利だと思いませんか? 不要な項目をワンクリックで切り替え… -
コマンドボタンの色をクリックするたびに黒色と赤色を入れ替える方法
ユーザーフォームに配置したコマンドボタンの文字色を条件に応じて変更したいと思いませんか? Excel-VBAのForeColorプロパティとStaticステートメントを使うことで、コ… -
複数一括処理でコマンドボタンのキャプションをセルの値に書き換える方法
ユーザーフォームに複数配置したコマンドボタンの名前を1個ずつ書くのは意外と面倒なので、セルの値から自動的に取得して書き換えができたら便利だと思いませんか? エ… -
VBAコマンドボタンにホームページURLを開く設定をする方法
ホームページのURLアドレスをユーザーフォームのコマンドボタンに登録して、クリックすると指定したホームページが別ウィンドウで開くようにしたいと思ったことありませ…
紅葉スポット
-
フリーきっぷで行く日光や栃木県内の紅葉名所や穴場スポット22選
関東地方で紅葉名所といえばなんといっても日光ですが、紅葉シーズンになると平日でもいろは坂は大渋滞なのに休日ともなると日光駅周辺から渋滞して全く動かない状態に… -
栃木駅から大平山展望台へバスで陸の松島と言われる紅葉スポットへ
【紅葉見頃】11月中旬~11月下旬 太平山は蔵の街で有名な栃木市中心部にある県立自然公園で、山頂付近にある太平山展望台からの眺望は、関東平野が一望でき眼下の峰々… -
日光駅から避暑地で紅葉名所の日光三名瀑の霧降の滝へバスで滞在時間30分
【紅葉見頃】10月下旬~11月上旬 日光三名瀑「華厳の滝」「裏見の滝」「霧降の滝」といわれ、年間を通じて観光に訪れる人が多い近畿スポットで、夏は避暑地として秋は… -
白馬岩岳の絶景「三段紅葉」へ長野駅からバスで滞在時間140分
10月下旬ごろ~11月上旬になるとテレビなどでよく話題になる絶景のビューポイントで、北アルプスの山頂が雪化粧をして赤く色づいた山麓、そして山のふもとはまだ緑色が… -
筑波山紅葉ライトアップへつくば駅や土浦駅からバスで紅葉絶景へ
2月の筑波梅林、6月のあじさいと年に何度も訪れたくなる筑波山は関東平野を一望できるちょうどいい60㎞という距離にあります。 紅葉が綺麗に見られるエリアは梅林周辺で… -
水上駅から利根川沿いに整備された遊歩道や諏訪峡のもみじ公園へ
水上駅の南側にバンジージャンプが体験できる有名な諏訪峡大橋には、もみじに囲まれたもみじ公園があり、ここから利根川沿いの紅葉を楽しむことができます。 そして整備…