Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAで段落ごとの文字数・文字列長を取得する

Word VBAで段落ごとの文字数・文字列長を取得する

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2011 ビルド13426.20332 Microsoft Store)

「word vba 段落の文字数」
「Word vba 段落 テキスト長」
といった検索で時折アクセスがあります。

Word VBAで、段落の文字数あるいは文字列の長さを取得するにはどのようなコードを書けばいいのか、探していた方による検索でしょう。

段落ごとの文字数・文字列長を取得するサンプルマクロ

以下のSubプロシージャを参考にしてください。

Sub 段落ごとの文字数や文字列長を取得する()
 Dim par As Paragraph
 For Each par In ActiveDocument.Paragraphs
  Debug.Print _
    par.Range.ComputeStatistics(wdStatisticCharacters); _
    par.Range.Characters.Count; _
    Left(par.Range.Text, 10)
 Next
End Sub

実行すると、アクティブなWord文書の全段落の、狭義の文字数、段落記号も含む文字列長、段落の最初の10文字が、イミディエイトウィンドウに出力されます。

サンプルマクロで行っている処理

「文字数」「テキスト長」と表現されているのが何なのか、厳密にはわかりません。人間が文字と認識できる狭義の文字だけなのか、スペースや段落記号等も文字としてカウントしたいのかどうかです。

そのため上記のSubプロシージャでは、Range.ComputeStatisticsメソッドの戻り値と、

Debug.Print _
  par.Range.ComputeStatistics(wdStatisticCharacters); _

Charactes.Countプロパティの戻り値、

  par.Range.Characters.Count; _

更に、どの段落かをわかりやすくするために、段落の最初の10文字もあわせて出力しています。

  Left(par.Range.Text, 10)

最終更新日時:2022-01-12 14:50

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAで段落ごとの文字数・文字列長を取得する

「段落・パラグラフ」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.