Home » ワードマクロ・Word VBAの使い方 » Documentオブジェクト » Word VBAで開いている全てのファイル名・文書名を取得する

Word VBAで開いている全てのファイル名・文書名を取得する

対象:Word2003, Word2007, Word2010

「word vba 開いているファイル名 取得」
という検索が行われていました。

WordのVBA(Visual Basic for Applications)で、開いているファイルの名前を取得する方法を探している方による検索です。

オブジェクト変数を使う例

ファイル名を取得してどうするのかがわからないので、参考になりそうなマクロをご紹介しておきます。

Sub 開いているファイル名を取得する_オブジェクト変数()
 Dim doc As Document
 For Each doc In Documents
  Debug.Print doc.Name
 Next
End Sub

上記のマクロを実行すると、イミディエイトウィンドウにファイル名が書き出されます。

For Each~Next文で、開いている全てのWord文書を表すDocumentsコレクションから個々のWord文書を表すDocumentオブジェクトを順番に取得して、DocumentオブジェクトのNameプロパティをDebug.Printしています。

カウンター変数を使う例

オブジェクト変数を使わない以下のようなコードでも同じ結果を得られます。

Sub 開いているファイル名を取得する_カウンター変数()
 Dim i As Long
 For i = 1 To Documents.Count
  Debug.Print Documents(i).Name
 Next i
End Sub

マクロの学習をはじめたばかりの方は、まずは、これらのFor Each~Next文やFor~Next文をスラスラ書けるようになることを目指すことおすすめします。

オブジェクト変数を使うFor Each~Next文は、通常オブジェクト変数を使わないFor~Next文でも書けますので、マクロ学習の一つとして、For Each~Next文をFor~Next文で書き直してみるのもおすすめです。

最終更新日時:2022-01-08 05:45

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » Documentオブジェクト » Word VBAで開いている全てのファイル名・文書名を取得する

「Documentオブジェクト」の記事一覧

検索


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

.