Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » 段落番号をテキストファイルに出力するWordマクロ-Openステートメント・Print #ステートメント

段落番号をテキストファイルに出力するWordマクロ-Openステートメント・Print #ステートメント

対象:Word2007, Word2010, Word2013, Windows版Word2016

「word vba 段落番号をテキストファイルへ出力」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがあることに気づきました。

段落番号をテキストファイルに出力するために、Word VBA(Visual Basic for Applications)でどのようなコードを書けばいいのかを探していた方による検索です。

[スポンサードリンク]

段落番号をテキストファイルに出力するサンプルマクロ

以下のSubプロシージャを実行すると、アクティブ文書の、アウトラインレベル1と2の段落の段落番号が、「c:\temp\output.txt」に出力されます。

Sub アウトラインレベル2以下の段落番号を出力する()
 Const F_PATH = "c:\temp\output.txt" ' 出力ファイルのフルパス
 Dim f_num As Integer ' ファイル番号
 Dim par As Paragraph

 f_num = FreeFile
 Open F_PATH For Output As f_num

 For Each par In ActiveDocument.Paragraphs
 With par
  If .OutlineLevel <= wdOutlineLevel2 Then
   Print #f_num, .Range.ListFormat.ListString
  End If
 End With
 Next par

 Close f_num
End Sub

サンプルマクロの解説

アウトラインレベル1の段落の、段落番号と、文字列をイミディエイトウィンドウにDebug.PrintするWordマクロをご紹介しています。

考え方は同じで、イミディエイトウィンドウに出力するのではなく、テキストファイルに出力する部分が異なります。

テキストファイルに出力するために、
Openステートメント、
  Open F_PATH For Output As f_num
Print #ステートメント、
  Print #f_num, .Range.ListFormat.ListString
Closeステートメントを使っています。
  Close f_num

これらの、Open・Print #・Closeステートメントは、ファイル出力の際に利用するVBAの構文で、Excel VBAで利用しているものと同じです。

VBAのFreeFile関数でファイル番号を取得して、
  f_num = FreeFile

Openステートメントでファイルを開き、
  Open F_PATH For Output As f_num

For Each~Nextループの中で、段落番号を、Print #ステートメントで書き込み、
  Print #f_num, .Range.ListFormat.ListString

最後にCloseステートメントでファイルを閉じています。
  Close f_num

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » 段落番号をテキストファイルに出力するWordマクロ-Openステートメント・Print #ステートメント

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

検索


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

.