(Wordマクロ)ページ設定:文字数と行数

ページ設定のうち、文字数と行数のタブをマクロで制御する方法を解説します。

このページで解説する項目は次の通りです。上から順番に解説します。




①文字方向

設定方法

ContentオブジェクトのOrientationメソッドで設定します。文字方向は横書きまたは縦書きのいずれかを設定します。
なお、引数として、wdTextOrientationDownwardwdTextOrientationUpwardの2つも用意されていますが、これらは指定できません(指定するとエラーとなります)。

使用例

横書きにする

Public Sub ページ全体の文字方向を指定する()
'横書き
ActiveDocument.Content.Orientation = _
wdTextOrientationHorizontalRotatedFarEast 
End Sub

縦書きにする

Public Sub ページ全体の文字方向を指定する()
'縦書き
ActiveDocument.Content.Orientation = wdTextOrientationVerticalFarEast 
End Sub

②段数

設定方法

Activedocument.PageSetup.TextColumnsプロパティで設定します。
TextColumns.SetCountメソッドで、設定する段数を指定します。設定できる段数は1~45の整数値ですが、極端に大きな数値を指定すると以下のエラーメッセージが表示されます。

引数は、NumColumnsですが、省略しても構いません。

また、段の間隔を均等にするEvenlySpacedプロパティなどもあります。これは、下の画像の赤枠で囲った部分に関する設定です。そのほか、段組みに関する設定は細かいものがたくさんありますので、別記事を立てて解説します。

使用例

段数の設定

Public Sub ページの段数を2にする()

With ActiveDocument.PageSetup.TextColumns
    .SetCount NumColumns:=2 '.SetCount 2 としても構いません
    .EvenlySpaced = True '段の間隔を均等にします
End With

End Sub

③文字数と行数の指定

設定方法

ActiveDocument.PageSetup.LayoutModeプロパティで設定します。
通常の設定と同じように、「標準の文字数を使う」「文字数と行数を指定する」「行数だけを指定する」「原稿用紙の設定にする」の4つを指定可能です。

使用例

標準の文字数を使う

Public Sub 文字数と行数の指定()
'標準の文字数を使う
ActiveDocument.PageSetup.LayoutMode = wdLayoutModeDefault
End Sub

文字数と行数を指定する

Public Sub 文字数と行数の指定()
'文字数と行数を指定する
ActiveDocument.PageSetup.LayoutMode = wdLayoutModeGrid
End Sub

行数だけを指定する

Public Sub 文字数と行数の指定()
'行数だけを指定する
ActiveDocument.PageSetup.LayoutMode = wdLayoutModeLineGrid
End Sub

原稿用紙の設定にする

Public Sub 文字数と行数の指定()
'原稿用紙の設定にする
ActiveDocument.PageSetup.LayoutMode = wdLayoutModeGenko
End Sub




④文字数

ActiveDocument.PageSetup.CharsLineプロパティで設定します。指定できる数値を超えると以下のエラーメッセージが表示されます。

CharsLineプロパティを設定した場合、LayoutModeプロパティの指定に関わらず、「文字数と行数を指定する」の設定に切り替わります。

なお、調べた限り、WordのVBAでは字送りで設定することはできないようです。「標準の字送りを使用する」のチェックボックスに関わる設定も見つかりませんでした。

余談ですが、「標準の字送りを使用する」のチェックボックスは、チェックを入れたとしても、再度ダイアログボックスを開くときにはチェックが外れています。チェックを入れた瞬間に文字数が切り替わることから目的の動作は果たされているのでしょうが、挙動としては何とも言い難いもやもや感があります。

使用例

Public Sub 文字数を指定する()
ActiveDocument.PageSetup.CharsLine = 27
End Sub

⑤行数

ActiveDocument.PageSetup.LinesPageプロパティで設定します。指定できる数値を超えると以下のエラーメッセージが表示されます。

LinesPageプロパティを設定した場合、CharasLineプロパティを設定した場合と同様、LayoutModeプロパティの指定に関わらず、「文字数と行数を指定する」の設定に切り替わります。また、行送りでの指定はできません。

使用例

Public Sub 行数を指定する()
ActiveDocument.PageSetup.LinesPage = 28
End Sub

おすすめ

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください