構文
構文は以下の通りです。
テキストボックス名.TextAlign = 値
解説
TextAlignプロパティは、テキストボックスに表示する文字の表示位置を設定する事ができます。値には、以下のいずれかの表示位置を設定します。
定数 | 値 | 内容 |
fmTextAlignLeft | 1 | 左揃え |
fmTextAlignCenter | 2 | 中央揃え |
fmTextAlignRight | 3 | 右揃え |
使い方
具体的な使い方を紹介します。
Sub SetTextBoxAlignment()
' ユーザーフォーム内のテキストボックスにアクセスする
UserForm1.TextBox1.TextAlign = fmTextAlignLeft ' テキストを左寄せに配置
UserForm1.TextBox2.TextAlign = fmTextAlignCenter ' テキストを中央寄せに配置
UserForm1.TextBox3.TextAlign = fmTextAlignRight ' テキストを右寄せに配置
End Sub
' ユーザーフォーム内のテキストボックスにアクセスする
UserForm1.TextBox1.TextAlign = fmTextAlignLeft ' テキストを左寄せに配置
UserForm1.TextBox2.TextAlign = fmTextAlignCenter ' テキストを中央寄せに配置
UserForm1.TextBox3.TextAlign = fmTextAlignRight ' テキストを右寄せに配置
End Sub
このコードでは、UserForm1 という名前のユーザーフォーム内に配置された3つのテキストボックスの TextAlign プロパティを設定しています。それぞれのテキストボックスが異なる配置でテキストを表示することができます。
プログラミング例
以下に、プログラミング例を紹介します。
例1: フォーム内のテキストボックスを右寄せに設定する
Private Sub SetTextAlignmentRight()
UserForm1.TextBox1.TextAlign = fmTextAlignRight ' テキストボックスを右寄せに設定
End Sub
UserForm1.TextBox1.TextAlign = fmTextAlignRight ' テキストボックスを右寄せに設定
End Sub
このコードは、指定したテキストボックスを右寄せに設定します。
例2: フォーム内のすべてのテキストボックスを中央揃えに設定する
Private Sub SetAllTextAlignmentCenter()
Dim ctrl As Control
For Each ctrl In UserForm1.Controls
If TypeName(ctrl) = "TextBox" Then
ctrl.TextAlign = fmTextAlignCenter ' すべてのテキストボックスを中央揃えに設定
End If
Next ctrl
End Sub
Dim ctrl As Control
For Each ctrl In UserForm1.Controls
If TypeName(ctrl) = "TextBox" Then
ctrl.TextAlign = fmTextAlignCenter ' すべてのテキストボックスを中央揃えに設定
End If
Next ctrl
End Sub
このコードは、フォーム内のすべてのテキストボックスを中央揃えに設定します。
例3: 条件に応じてテキストボックスの表示位置を切り替える
Private Sub SetTextAlignmentBasedOnCondition()
If Range("A1").Value = "右寄せ" Then
UserForm1.TextBox1.TextAlign = fmTextAlignRight
ElseIf Range("A1").Value = "中央揃え" Then
UserForm1.TextBox1.TextAlign = fmTextAlignCenter
Else
UserForm1.TextBox1.TextAlign = fmTextAlignLeft
End If
End Sub
If Range("A1").Value = "右寄せ" Then
UserForm1.TextBox1.TextAlign = fmTextAlignRight
ElseIf Range("A1").Value = "中央揃え" Then
UserForm1.TextBox1.TextAlign = fmTextAlignCenter
Else
UserForm1.TextBox1.TextAlign = fmTextAlignLeft
End If
End Sub
このコードは、セルA1の値に応じてテキストボックスの表示位置を切り替えます。セルA1に「右寄せ」が入力されると、テキストボックスが右寄せに、それ以外の場合は中央揃えになります。
まとめ
TextAlignプロパティを使いこなすことで、データの視覚的な整列を制御し、ユーザーエクスペリエンスを向上させることができます。是非活用してください。