教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA フォーム&コントロール】ラベルに表示する文字列を設定するにはどうすればいいの?教えて!

f:id:m_kbou:20210706085926p:plain

コマンドボタンをクリックして、ラベルに表示する文字列を設定する方法について紹介します。

 

 

構文

記述方法は以下の通りとなります。

[ラベル名].Caption = ”[文字列]”

[説明]:

[ラベル名]にはラベルのオブジェクト名を記述します。[文字列]にはラベルに表示する文字列を記述します。また、[文字列]は「”」(ダブルクォーテーション)で囲みます。内容を纏めると、「[文字列]で指定した文字列をラベルに表示して下さい。」との意味になります。

[記述例]:

Private Sub 朝の挨拶_Click()
  あいさつ.Caption = "おはようございます。"
End Sub

[サンプルフォーム]: 

今回は以下のサンプルフォームを使用して説明します。
・フォーム名の付け方はこちらを参考にして下さい。
・ラベル名の付け方はこちらを参考にして下さい。
・コマンドボタン名の付け方はこちらを参考にして下さい。
・コマンドボタンへの表示文字の付け方はこちらを参考にして下さい。

f:id:m_kbou:20210706090213p:plain

[実行内容]: 

今回は上記のサンプルフォーム内にある
 <朝の挨拶>ボタンをクリックすると、あいさつラベルに「おはようございます。」
 <昼の挨拶>ボタンをクリックすると、あいさつラベルに「こんにちは。」
 <夜の挨拶>ボタンをクリックすると、あいさつラベルに「こんばんわ。」
を表示する設定方法について説明します。

 

ラベルに表示する文字列の設定方法及び実行結果

設定方法及び実行結果について説明します。

(1)VBE(VBA記述画面)を開き、予め作成したテストフォームがある事を確認します。(※VBEの開き方についてはこちらを参考にして下さい。)

f:id:m_kbou:20210706090241p:plain

(2)フォームにある<朝の挨拶>ボタン上で右クリックします。小窓が開くので「コードの表示」を選択します。

f:id:m_kbou:20210706090321p:plain

(3)「朝の挨拶_Click」イベントプロシージャが表示されます。(※これは自動的に作成される仕組みとなっている様です。)

f:id:m_kbou:20210706090525p:plain

(4)実行する処理内容を記述します。今回はボタンがクリックされた際にラベル名:あいさつに”おはようございます。”を表示する内容を記述します。(※ここで今回の題目であるラベルに表示する文字列設定の内容を記述します。)

Private Sub 朝の挨拶_Click()
  あいさつ.Caption = "おはようございます。"
End Sub

f:id:m_kbou:20210706090729p:plain

(5)フォームにある<昼の挨拶>や<夜の挨拶>ボタンについても、上記の(2)~(4)と同じ様に処理内容を記述します。

f:id:m_kbou:20210706091413p:plain

(6)<昼の挨拶>ボタンがクリックされた際にはラベル名:あいさつに”こんにちは。”を、<夜の挨拶>ボタンがクリックされた際にはラベル名:あいさつに”こんばんわ。”を表示する内容を記述します。(※ここでも今回の題目であるラベルに表示する文字列設定の内容を記述します。)

Private Sub 昼の挨拶_Click()
  あいさつ.Caption = "こんにちは。"
End Sub

Private Sub 夜の挨拶_Click()
  あいさつ.Caption = "こんばんわ。"
End Sub

f:id:m_kbou:20210706094028p:plain

(7)上部にある実行ボタン(▶)をクリックします。

f:id:m_kbou:20210706092009p:plain

(8)テストフォームが表示されます。

f:id:m_kbou:20210706092338p:plain

(9)最初に<朝の挨拶>ボタンをクリックします。

f:id:m_kbou:20210706092406p:plain

(10)ラベル名:あいさつに「おはようございます。」が表示されます。(※<朝の挨拶>ボタンに設定した上記(4)イベントプロシージャが実行された事が分かります。)

 f:id:m_kbou:20210706092456p:plain

(11)次に<昼の挨拶>ボタンをクリックします。

 f:id:m_kbou:20210706092514p:plain

(12)ラベル名:あいさつに「こんにちは。」が表示されます。(※<昼の挨拶>ボタンに設定した上記(6)イベントプロシージャが実行された事が分かります。)

f:id:m_kbou:20210706094049p:plain

(13)最後に<夜の挨拶>ボタンをクリックします。

f:id:m_kbou:20210706092541p:plain

(14)ラベル名:あいさつに「こんばんわ。」が表示されます。(※<夜の挨拶>ボタンに設定した上記(6)イベントプロシージャが実行された事が分かります。)

f:id:m_kbou:20210706092553p:plain

ラベルに表示する文字列の設定方法及び実行結果についての説明は以上です。

 

サンプル

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

  

おわりに

今回はラベルに表示する文字列の設定方法について説明しました。ラベルに表示する文字列は、ラベルプロパティで設定する事も可能ですが、今回の様にVBAコードを使用して動的に設定する事も可能です。是非活用してみて下さい。