ブックのプロパティを取得

VBAでは、WorkbookクラスのBuiltinDocumentPropertiesプロパティを使用することで、組み込みプロパティを取得・設定が可能です。以下、サンプルです。

Sub GetDocumentProperties()
    On Error Resume Next  ' エラーが発生しても次の行に進む

    With ThisWorkbook  ' 現在のブックに対して処理を行う
        Dim i As Long
        ' すべての組み込みドキュメントプロパティをループ処理
        For i = 1 To .BuiltinDocumentProperties.Count
            ' 組み込みドキュメントプロパティの名前をセルに設定
            Cells(i, 1) = .BuiltinDocumentProperties(i).Name
            ' 組み込みドキュメントプロパティの値をセルに設定
            Cells(i, 2) = .BuiltinDocumentProperties(i).Value
        Next i
    End With
End Sub

このマクロを実行すると、ブックのすべてのプロパティの名前がA列に、その値がB列に表示されます。

以下にて、プロパティの設定が可能です。

Sub SetBuiltinDocumentProperty()
    ' 現在アクティブなブックの組み込みドキュメントプロパティ「Author」に値を設定する
    ActiveWorkbook.BuiltinDocumentProperties("Author") = "おおた いちろう"
End Sub

以下にて、名前からプロパティの取得ができます。

Sub GetDocumentPropertiesByName()
    ' アクティブなブックの組み込みドキュメントプロパティを取得する
    With ActiveWorkbook.BuiltinDocumentProperties
        ' 組み込みドキュメントプロパティ「Last save time」の値をメッセージボックスで表示する
        MsgBox "最終更新日:" & .Item("Last save time")
    End With
End Sub

詳しい説明は、以下を参照してください。

ブックのドキュメントプロパティを操作する

http://officetanaka.net/excel/vba/tips/tips122.htm

Follow me!

Excel

前の記事

ブックを保存する、閉じる
Excel

次の記事

Workbook クラスのイベント