コントロールとキャプションの位置関係を設定する(Alignmentプロパティ)

ユーザーフォームに設置したオプションボタンやチェックボックスでコントロールとキャプションの位置関係を設定するには Alignment プロパティを使用します。ここでは Excel のユーザーフォームで Alignment プロパティを使ってコントロールとキャプションの位置関係を設定する方法について解説します。

(Last modified: )

コントロールとキャプションの位置関係を設定する

ユーザーフォームに設置したコントロールとキャプションの位置関係を設定するには Alignment プロパティを使用します。デフォルトでは Alignment の値は「1 - fmAlignmentRight」です。

コントロールとキャプションの位置関係を設定する(1)

設定可能な値には次の種類があります。

定数説明
fmAlignmentLeft0キャプションをコントロールの左側に配置する
fmAlignmentRight1キャプションをコントロールの右側に配置

コントロールに対するコントロールとキャプションの位置関係を変更するには Alignment プロパティの項目をクリックしてください。そして表示されたドロップダウンメニューをクリックし設定する項目をクリックしてください。

コントロールとキャプションの位置関係を設定する(2)

例えば fmAlignmentLeft を設定してキャプションをコントロールの左側に配置してみます。

コントロールとキャプションの位置関係を設定する(3)

チェックボックスのキャプションがコントロールの左側に表示されるように変更されました。

このように Alignment プロパティの値を変更することで、コントロールとキャプションの位置関係を設定することができます。

VBAのプログラムの中でAlignmentプロパティを設定する

プロパティウィンドウを使って Alignment プロパティの値を変更する代わりに、 VBA のコードを記述して Alignment プロパティの値を変更することもできます。

プログラムの中で Alignment プロパティを設定する場合は次の書式を使用します。

オブジェクト.Alignment [= fmAlignment ]

対象のオブジェクトの Alignment プロパティに対してコントロールとキャプションの位置関係を表す値を代入してください。設定できる値はこのページの最初の方を参照されてください。

サンプルコード

簡単なサンプルで試してみます。ユーザーフォームが表示される前に発生する Initialize イベントに対するイベントプロシージャを作成し、その中で Alignment プロパティの値を設定します。ユーザーフォームが表示される前にコントロールのプロパティの設定が行われます。

Initialize イベントに対するイベントプロシージャの使い方については「ユーザーフォームを表示する直前に発生するイベント(Initializeイベント)」を参照されてください。

ユーザーフォームのコントロールが何もないところをダブルクリックしてください。

VBAのプログラムの中でAlignmentプロパティを設定する(1)

ユーザーフォームの規定のイベントである Click イベントに対するイベントプロシージャが表示されます。

VBAのプログラムの中でAlignmentプロパティを設定する(2)

今回はユーザーフォームの Initialize イベントに対するイベントプロシージャ使用するので、コードウィンドウで次のようにイベントプロシージャを追加で記述してください。

Private Sub UserForm_Initialize()
    CheckBox1.Alignment = fmAlignmentRight
    OptionButton1.Alignment = fmAlignmentLeft
End Sub

VBAのプログラムの中でAlignmentプロパティを設定する(3)

これでコードの記述は完了です。では実際に試してみます。「Sub/ユーザーフォームの実行」をクリックしてください。

VBAのプログラムの中でAlignmentプロパティを設定する(4)

ユーザーフォームが表示されました。チェックボックスについてはコントロールの右側にキャプションが表示され、オプションボタンについてはコントロールの左側にキャプションが表示されました。

VBAのプログラムの中でAlignmentプロパティを設定する(5)

このように VBA のプログラムの中で Alignment プロパティの値を変更することができました。

-- --

Excel のユーザーフォームで Alignment プロパティを使ってコントロールとキャプションの位置関係を設定する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。