文字の横位置(水平方向)を変更する時は、HorizontalAlignment プロパティに「右揃え」や「中央揃え」を定数で設定します。
HorizontalAlignmentに設定できる定数一覧
定数名 | 設定される文字の横位置 |
---|---|
xlGeneral | 標準 |
xlLeft | 左揃え |
xlCenter | 中央揃え |
xlRight | 右揃え |
xlFill | 繰り返し |
xlJustify | 両端揃え |
xlCenterAcrossSelection | 選択範囲内で中央 |
xlDistributed | 均等割り付け |
xlCenterAcrossSelectionの「選択範囲内で中央」について。
これは文字を中央揃えにしたいけど、セルの結合をしたくない時に使います。
これは図で見たほうがわかりやすいので、下の実行結果を見てください。
どちらもB2セルに「えくとしょ」と入力しています。
例)B2~E2を結合した「中央揃え」
例)B2~E2を選択して、「選択範囲内で中央」
「選択範囲内で中央」はカーソルでC2セルが選べるので、セルが結合されていないのがわかると思います。でも、B2に入力されている「えくとしょ」が、選択範囲のB2~E2の中央に表示されます。
セル(1セル、複数セル、全てのセル)の横位置を変更する
1セルの時
Range(“セル番地”).HorizontalAlignment = 横位置の定数
Cells(行番号,列番号).HorizontalAlignment = 横位置の定数
1つのセルで文字の横位置(水平方向)を変更する時は、対象セルの指定を「Rangeのセル番地」か「Cellsの行番号・列番号」でします。
Rangeのセル番地は、ダブルクォーテーションで囲みます。
コード
A1セルを「中央揃え」に設定します。
1 2 3 4 5 6 7 |
'Rangeによる対象セルの指定---------- Range("A1").HorizontalAlignment = xlCenter 'Cellsによる対象セルの指定---------- Cells(1, 1).HorizontalAlignment = xlCenter |
複数セルの時
Range(“左上セル番地:右下セル番地”).HorizontalAlignment = 横位置の定数
複数セルの文字の横位置(水平方向)をまとめて設定をする時は、Rangeで対象範囲の左上のセル番地と右下のセル番地を:でつないで指定します。
指定したセル番地全体をダブルクォーテーションで囲みます。
コード
A1~E2のセルすべてを「右揃え」に設定します。
1 2 3 |
Range("A1:E2").HorizontalAlignment = xlRight |
全てのセル(シート全体)の時
Cells.HorizontalAlignment = 横位置の定数
全てのセルで文字の横位置(水平方向)をまとめて設定をする時は、Cellsで指定します。
Cellsは引数指定なしにすれば、すべてのセルを操作できます。
逆に引数指定してCells(1,1)とすると、A1セルのみを操作できます。
コード
全てのセルを「右揃え」に設定します。
1 2 3 |
Cells.HorizontalAlignment = xlRight |
行(1行、複数行)の横位置を変更する
1行の時
Rows(行番号).HorizontalAlignment = 横位置の定数
1行の文字の横位置(水平方向)を変更する時は、Rowsの行番号で対象行を指定します。
1行だけの時は、行番号をダブルクォーテーションで囲まなくてOKです。
コード
1行目を「中央揃え」に設定します。
1 2 3 |
Rows(1).HorizontalAlignment = xlCenter |
複数行の時
Rows(“開始行番号:終了行番号”).HorizontalAlignment = 横位置の定数
複数行で文字の横位置(水平方向)をまとめて設定をする時は、Rowsで対象範囲の開始行番号(1番上)と終了行番号(1番下)を:でつないで指定します。
1行を指定する時と違い、複数行指定する時は行番号全体をダブルクォーテーションで囲みます。
コード
1行目~5行目のセルすべてを「右揃え」に設定します。
1 2 3 |
Rows("1:5").HorizontalAlignment = xlRight |
列(1列、複数列)の横位置を変更する
1列の時
Columns(“列記号”).HorizontalAlignment = 横位置の定数
1列の文字の横位置(水平方向)を変更する時は、Columnsの列記号(Aから始まる記号)で対象列を指定します。
この時、列記号をダブルクォーテーションで囲みます。
行と同じように、列番号(1からの始まる数値)でも列の指定はできます。この時は数値なので、ダブルクォーテーションで囲みません。
コード
1列目を「中央揃え」に設定します。
1 2 3 4 5 6 7 |
'列記号で列指定-------------------- Columns("A").HorizontalAlignment = xlCenter '列番号で列指定-------------------- Columns(1).HorizontalAlignment = xlCenter |
複数列の時
Columns(“開始列記号:終了列記号”).HorizontalAlignment = 横位置の定数
複数列で文字の横位置(水平方向)をまとめて設定をする時は、Columnsで対象範囲の開始列記号(1番左)と終了列記号(1番右)を:でつないで指定します。
列記号全体をダブルクォーテーションで囲みます。
1列の時は数値でも指定できたけど、複数列を数値でするとエラーになります。
NG例) Columns(“1:5”).HorizontalAlignment = xlCenter
コード
1列目~5列目のセルすべてを「右揃え」に設定します。
1 2 3 |
Columns("A:E").HorizontalAlignment = xlRight |