Home » ワードマクロ・Word VBAの使い方 » Documentオブジェクト » Word VBAで文書プロパティを取得する

Word VBAで文書プロパティを取得する

対象:Word2003, Word2007, Word2010

「wordのプロパティを取得するためのマクロ」
という検索が行われていました。

Word文書のプロパティを取得するVBA(Visual Basic for Applications)マクロを探している方による検索でしょうか。

[スポンサードリンク]
プロパティを取得して、どうしたいのかがこの検索からはわかりませんが、以下のコードが参考になるでしょう。
Sub 文書のプロパティを取得する()
On Error Resume Next
 Dim p As DocumentProperty
 For Each p In ActiveDocument.BuiltInDocumentProperties
  Debug.Print p.Name & ": " & p.Value
 Next
End Sub

上記のマクロを実行するとイミディエイトウィンドウに、プロパティの名前と値が出力されます。

やっていることは、For Each ~ Nextループ文で、ActiveDocument.BuiltInDocumentPropertiesコレクションを順番に参照して、DocumentProperty.NameプロパティとDocumentProperty.Valueプロパティを順番に出力しているだけです。

プロパティ値がないときにエラーとなるのを避けるために、ループ文に入る前にOn Error Resume Nextしています。

結果は同じようなものですが、以下のようなマクロのほうが、コレクションとオブジェクトの関係が参考になるかもしれません。
Sub 文書プロパティを取得する2()
On Error Resume Next
 With ActiveDocument.BuiltInDocumentProperties
  Dim i As Long 
  For i = 1 To .Count
   Debug.Print i & ": " & .Item(i).Name & ": " & .Item(i).Value
  Next i
 End With
End Sub

ちなみに、、
この記事を書く前に、新田順也さんのブログ「みんなのワードマクロ」で、似たような記事が公開されていないか「BuiltInDocumentProperties」を検索してみたのですが、ヒット件数は0でした。

新田さんのまわりではWord文書のプロパティを取得したいという要望はそれほどないためこういう記事はなく、このサイト・インストラクターのネタ帳の読者さんの場合にはこういものを必要とする方がいらっしゃるということで、読者層の違いを面白いなと思っています。

最終更新日時:2020-04-26 09:39

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » Documentオブジェクト » Word VBAで文書プロパティを取得する

TrackBack:1

TrackBack URL
BuiltInDocumentProperties定数一覧 from インストラクターのネタ帳
対象:Word2003, Word2007, Word2010 Word文書のプロパティ一覧を取得するVBA(Visual Basic for Appl...

Home » ワードマクロ・Word VBAの使い方 » Documentオブジェクト » Word VBAで文書プロパティを取得する

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

.