ワードマクロで、表の文字列を中央揃えに設定するVBAコードをご紹介します。
以下のような作業でお困りはありませんか?
・表の1行目、または1列目のみ中央揃えにしたい
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
表の文字列を中央揃えにする
以下のWordVBAを実行すると、
ワードファイル内にある、全ての表内の文字列を「中央揃え」にします。
Sub 表中の文字を中央揃え1()
Dim i As Long
'ファイル内のすべての表をループ
For i = 1 To ActiveDocument.Tables.Count
ActiveDocument.Tables(i).Range. _
ParagraphFormat.Alignment = wdAlignParagraphCenter
Next i
End Sub
マクロ実行前
マクロ実行前は、表の文字列の配置は「左寄せ」に設定されている状態です。
マクロ実行後
表の文字列の配置を、「中央揃え」に変更しました。
VBAコードの解説
[For i = 1 To ActiveDocument.Tables.Count] ~ [Next i] は、
ワードファイル内にあるすべての表に対してループ処理します。
[ActiveDocument.Tables(i).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter] は、表中の文字列を中央揃えに設定します。
表の1列目の文字列を中央揃えにする
以下のWordVBAを実行すると、
ワードファイル内にある、全ての表の1列目の文字列を「中央揃え」にします。
Sub 表の1列目を中央揃え()
Dim i As Long
Dim Q As Long
'ファイル内のすべての表をループ
For i = 1 To ActiveDocument.Tables.Count
For Q = 1 To ActiveDocument.Tables.Item(i).Rows.Count
With ActiveDocument.Tables(i)
'1列目の文字列を中央揃えにする
.Cell(Q, 1).Range.ParagraphFormat.Alignment = _
wdAlignParagraphCenter
End With
Next Q
Next i
End Sub
マクロ実行前
表の1列目の文字列の配置は、「左寄せ」に設定されています。
マクロ実行後
表の1列目の文字列の配置を、「中央揃え」に変更しました。
結合されているセル(下図の”確認中”と入力されているセル)も、
「1列目」と判定され、「中央揃え」に設定されます。
VBAコードの解説
[For Q = 1 To ActiveDocument.Tables.Item(i).Rows.Count] ~ [Next Q] は、
表の行数分ループします。
(例)対象となる表の行数が3行ある場合は、3回ループします。
[ActiveDocument.Tables(i)] は、
ワードファイル内の上から何個目にある表なのかを示します。
[i]=1の場合、ワードファイル内の1番上にある表を示します。
表の1行目の文字列を中央揃えにする
以下のWordVBAを実行すると、
ワードファイル内にある、全ての表の1行目の文字列を「中央揃え」にします。
Sub 表の1行目を中央揃え()
Dim i As Long
Dim Q As Long
'ファイル内のすべての表をループ
For i = 1 To ActiveDocument.Tables.Count
For Q = 1 To ActiveDocument.Tables.Item(i).Columns.Count
With ActiveDocument.Tables(i)
'1行目の文字列を中央揃えにする
.Cell(1, Q).Range.ParagraphFormat.Alignment = _
wdAlignParagraphCenter
End With
Next Q
Next i
End Sub
マクロ実行前
表の1行目の文字列の配置は、「左寄せ」に設定されています。
マクロ実行後
表の1行目の文字列の配置を、「中央揃え」に変更しました。
VBAコードの解説
[For Q = 1 To ActiveDocument.Tables.Item(i).Columns.Count]~[Next Q] は、
1つ1つの表の列数をカウントし、列数の総数分ループします。
(例)対象となる表の列数が4列ある場合は、4回ループします。
