コントロールとキャプションの位置関係を設定する(Alignmentプロパティ)
ユーザーフォームに設置したオプションボタンやチェックボックスでコントロールとキャプションの位置関係を設定するには Alignment プロパティを使用します。ここでは Excel のユーザーフォームで Alignment プロパティを使ってコントロールとキャプションの位置関係を設定する方法について解説します。
(Last modified: )
コントロールとキャプションの位置関係を設定する
ユーザーフォームに設置したコントロールとキャプションの位置関係を設定するには Alignment
プロパティを使用します。デフォルトでは Alignment
の値は「1 - fmAlignmentRight」です。
設定可能な値には次の種類があります。
定数 | 値 | 説明 |
---|---|---|
fmAlignmentLeft | 0 | キャプションをコントロールの左側に配置する |
fmAlignmentRight | 1 | キャプションをコントロールの右側に配置 |
コントロールに対するコントロールとキャプションの位置関係を変更するには Alignment
プロパティの項目をクリックしてください。そして表示されたドロップダウンメニューをクリックし設定する項目をクリックしてください。
例えば fmAlignmentLeft
を設定してキャプションをコントロールの左側に配置してみます。
チェックボックスのキャプションがコントロールの左側に表示されるように変更されました。
このように Alignment
プロパティの値を変更することで、コントロールとキャプションの位置関係を設定することができます。
VBAのプログラムの中でAlignmentプロパティを設定する
プロパティウィンドウを使って Alignment
プロパティの値を変更する代わりに、 VBA のコードを記述して Alignment
プロパティの値を変更することもできます。
プログラムの中で Alignment
プロパティを設定する場合は次の書式を使用します。
オブジェクト.Alignment [= fmAlignment ]
対象のオブジェクトの Alignment
プロパティに対してコントロールとキャプションの位置関係を表す値を代入してください。設定できる値はこのページの最初の方を参照されてください。
簡単なサンプルで試してみます。ユーザーフォームが表示される前に発生する Initialize
イベントに対するイベントプロシージャを作成し、その中で Alignment
プロパティの値を設定します。ユーザーフォームが表示される前にコントロールのプロパティの設定が行われます。
※ Initialize
イベントに対するイベントプロシージャの使い方については「ユーザーフォームを表示する直前に発生するイベント(Initializeイベント)」を参照されてください。
ユーザーフォームのコントロールが何もないところをダブルクリックしてください。
ユーザーフォームの規定のイベントである Click
イベントに対するイベントプロシージャが表示されます。
今回はユーザーフォームの Initialize
イベントに対するイベントプロシージャ使用するので、コードウィンドウで次のようにイベントプロシージャを追加で記述してください。
Private Sub UserForm_Initialize() CheckBox1.Alignment = fmAlignmentRight OptionButton1.Alignment = fmAlignmentLeft End Sub
これでコードの記述は完了です。では実際に試してみます。「Sub/ユーザーフォームの実行」をクリックしてください。
ユーザーフォームが表示されました。チェックボックスについてはコントロールの右側にキャプションが表示され、オプションボタンについてはコントロールの左側にキャプションが表示されました。
このように VBA のプログラムの中で Alignment
プロパティの値を変更することができました。
-- --
Excel のユーザーフォームで Alignment プロパティを使ってコントロールとキャプションの位置関係を設定する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
プログラミングや開発環境構築の解説サイトを運営しています。