【ワードマクロ】表のフォントサイズ変更:使用例3選

ワードマクロで表のフォントサイズを変更するアイキャッチ WordVBA

ワードマクロで、表のフォントサイズを変更するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください😉

全ての表のフォントサイズ変更

以下のWordVBAを実行すると、すべての表のフォントサイズを「10pt」に設定します。


Sub 表のフォントサイズを変更1()
 
  Dim i As Long
  Dim TblCnt As Long
  
  'ファイル内にある表をカウント
  TblCnt = ActiveDocument.Tables.Count
  
  '全ての表をループ
  For i = 1 To TblCnt
    With ActiveDocument.Tables(i)

     'フォントサイズを「10pt」に設定
     .Range.Font.Size = 10

    End With
  Next i
 
End Sub

マクロ実行前

フォントサイズ:13pt

 

マクロ実行後

フォントサイズ:10pt

ファイル内にあるすべての表のフォントサイズを「10pt」に変更します。

 

VBAコードの解説

[TblCnt = ActiveDocument.Tables.Count]は、
表の総数を取得し、[TblCnt]に格納します。
(例)ワードファイル内に表が10個ある場合、[TblCnt]に「10」を格納します。

[For i = 1 To TblCnt]~[Next i]は、
ワードファイル内にある表の総数分ループします。
(例)ワードファイル内に表が10個ある場合、「10」回ループします。

[ActiveDocument.Tables(i)]は、
ワードファイル内の上から何個目にある表なのかを示します。
(例)「i=1」の時は、ワードファイル内の1番上にある表を示します。

[.Range.Font.Size = 10]は、
処理対象の表内の文字列について、フォントサイズを「10pt」に設定します。
(例)「i=1」の時は、ワードファイル内の1番上にある表内のフォントサイズを全て「10pt」に設定します。
 

特定の表のフォントサイズ変更

以下のWordVBAを実行すると、1番上にある表のフォントサイズを「12pt」に設定します。


Sub 表のフォントサイズを変更2()
 
  Dim i As Long
  Dim TblCnt As Long
  
  'ファイル内にある表をカウント
  TblCnt = ActiveDocument.Tables.Count
 
  '全ての表をループ
  For i = 1 To TblCnt
  
    If i = 1 Then
      With ActiveDocument.Tables(i)

       'フォントサイズを「12pt」に設定
       .Range.Font.Size = 12

      End With
    Else
      Exit Sub
    End If
  
  Next i
 
End Sub

マクロ実行前

フォントサイズ:15pt

 

マクロ実行後

フォントサイズ:12pt

ワードファイルの1番上にある表のフォントサイズのみ「12pt」変更され、
それ以外の表についてはフォントサイズは「15pt」のまま変更されません。

 

VBAコードの解説

[For~Next]の中に[If i = 1 Then] を入れることで、
「ワードファイル内にある1番上にある表」を指定することできます。

「i=1」以外の場合は、[Else]に進み[Exit Sub]によりサブプロシージャを終了します。
 

表の特定の列のフォントサイズ変更

以下のWordVBAを実行すると、全ての表の1列目のフォントサイズを「15.5pt」に設定します。


Sub 表のフォントサイズを変更3()
 
  Dim i As Long
  Dim Q As Long
  Dim Tbl_Cnt As Long
  Dim Tbl_Row_Cnt
  
 'ファイル内にある表をカウント
  Tbl_Cnt = ActiveDocument.Tables.Count
 
  For i = 1 To Tbl_Cnt
  
    '表の行数をカウント
    Tbl_Row_Cnt = ActiveDocument.Tables.Item(i).Rows.Count
 
    For Q = 1 To Tbl_Row_Cnt
      With ActiveDocument.Tables(i)

       'フォントサイズを「15.5pt」に設定
       .Columns(1).Cells(Q).Range.Font.Size = 15.5

      End With
    Next Q
 
  Next i
  
End Sub

マクロ実行前

表の1列目のフォントサイズ:12pt

 

マクロ実行後

表の1列目のフォントサイズ:15.5pt

ワードファイルにある表の1列目のフォントサイズのみ「15.5pt」変更され、
それ以外の表の列についてはフォントサイズは「12pt」のまま変更されません。

 

VBAコードの解説

[Tbl_Row_Cnt = ActiveDocument.Tables.Item(i).Rows.Count]は、
処理対象の表の行数をカウントし、[Tbl_Row_Cnt]に格納します。
(例)「i=1」の場合、ワードファイル内の1番上にある表の行数をカウントし、
その数値を[Tbl_Row_Cnt]に格納します。

[For Q = 1 To Tbl_Row_Cnt]~[Next Q]は、
処理対象の表の行数分をループします。

[.Columns(1).Cells(Q).Range.Font.Size = 15.5]は、
[Q]=1の場合、処理対象の表について「1列目・1行目」のセルのフォントサイズを
「15.5pt」に設定します。

[Q]=2の場合、処理対象の表について「1列目・2行目」のセルのフォントサイズを
「15.5pt」に設定します。

対象の表について行数分ループした後は、次の表へ処理が移ります。

 
この記事がお役に立ちますと幸いです🍀
 
・【ワードマクロ】表の処理を自動化の使用例まとめ
 

【ワードマクロ】表の処理を自動化:超便利7選
...

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説