エクセルで作業効率化の為に作ったオリジナルの入力フォーム(ユーザーフォーム)に配置したコマンドボタンの表示名を1行表示ではなく、改行して2行表示にしたいと思ったことありませんか?
Excel-VBAでの初期設定では1行で、文字の間にカーソルを置いてEnterキーを押しても改行できませんが、プロパティからでもなくVBAコードを記載すれば、簡単に2行表示できますので改行方法ご紹介いたします。
コマンドボタンのキャプション改行
エクセルVBAでよく使われる基本的な改行コードの「vbCrLf」(キャリッジリターン)を使うことで、改行してカーソルを文頭へ移動することができるようになっています。
ここでは、ユーザーフォームを開いたらコマンドボタンのキャプションが2行表示させるVBAコードや、コマンドボタンをクリックしたら2行表示に切り替わるVBAコードです。
ユーザーフォーム表示時に改行表示
初期設定ではコマンドボタンの文字(キャプション)は、1行表示になっています。

ユーザーフォームが開く直前に処理を実行することができるUserForm_Initializeに、コマンドボタンのキャプションを1行目に「どこかに」2行目に「ビューーン!」と、2行表示させるVBAコードを書くと、下記のようになります。
Private Sub UserForm_Initialize()
CommandButton1.Caption = “どこかに” & vbCrLf & ”ビューーン!”
End Sub
- ユーザーフォーム表示前に処理を実行する
- コマンドボタン1のキャプションは、1行目「どこかに」2行目「」ビューーン!」
- マクロ記録終了

ちなみに「UserForm_Initialize」の使い方を詳しく知りたい方は、下記を参照してくださいね。

コマンドボタンをクリックしたら2行表示
次に、コマンドボタンをクリックすると2行表示になり、もう1回クリックすると元の1行表示にさせるVBAコードです。
Private Sub CommandButton1_Click()
Static onoff As Boolean
If onoff Then
CommandButton1.Caption = “どこかにビューーン!”
Else
CommandButton1.Caption = “どこかに” & vbCrLf & “ビューーン!”
End If
onoff = Not onoff
End Sub
- コマンドボタン1がクリックされたら
- Staticステートメントを宣言してonoffという変数名で真偽を判定する
- もし変数名onoffの状態が
- コマンドボタン1の文字が「どこかにビューーン!」だったら
- コマンドボタン1の文字を「どこかに」と「ビューーン!」の2行表示にする
- そうではなかったら
- コマンドボタン1の文字が「どこかにビューーン!」にする
- マクロ記録終了

このように改行したい文字の間に「& vbCrLf &」を抽入すれば、コマンドボタンのキャプションを2行表示できるようになります。
関連記事
-
エクセルVBAコマンドボタンでON/OFF切替スイッチを作る方法
ワークシート上にある罫線やリボンなど7つの項目を表示したり非表示することができる切替ボタンがあったら便利だと思いませんか? 不要な項目をワンクリックで切り替え… -
コマンドボタンのキャプションを文字ではなく画像にする2つの方法
ユーザーフォームに配置したコマンドボタンに表示されるキャプションは「文字」なのですが、複数のボタンが並んでいる時は「文字」ではなく「画像」で表示させたいと思… -
コマンドボタンの文字を名前・出席・欠席と繰り返し変更する方法
名前が表示させているコマンドボタンを1回押すと「出席」、もう1回押すと「欠席」、さらに1回押すと再び名前表示するようにコマンドボタンのキャプションを変更させたい… -
複数一括処理でコマンドボタンのキャプションをセルの値に書き換える方法
ユーザーフォームに複数配置したコマンドボタンの名前を1個ずつ書くのは意外と面倒なので、セルの値から自動的に取得して書き換えができたら便利だと思いませんか? エ… -
コマンドボタンの表示文字(キャプション)を2行に改行表示する方法
エクセルで作業効率化の為に作ったオリジナルの入力フォーム(ユーザーフォーム)に配置したコマンドボタンの表示名を1行表示ではなく、改行して2行表示にしたいと思っ… -
コマンドボタンの色をクリックするたびに黒色と赤色を入れ替える方法
ユーザーフォームに配置したコマンドボタンの文字色を条件に応じて変更したいと思いませんか? Excel-VBAのForeColorプロパティとStaticステートメントを使うことで、コ… -
VBAコマンドボタンにホームページURLを開く設定をする方法
ホームページのURLアドレスをユーザーフォームのコマンドボタンに登録して、クリックすると指定したホームページが別ウィンドウで開くようにしたいと思ったことありませ…
紅葉スポット
記事が見つかりませんでした。