【VBA】ブックのプロパティを参照・設定する

(パス、名前、フルネームなど)

VBAを使うと、開いているブックのファイル名や保存場所のパスなどの情報を取得できます。
また、一部のプロパティは設定(変更)も可能です。


1. 基本的なプロパティの取得

Sub ShowWorkbookProperties()
    Dim wb As Workbook
    Set wb = ActiveWorkbook 'アクティブなブックを取得
    
    MsgBox "名前: " & wb.Name & vbCrLf & _
           "フルネーム: " & wb.FullName & vbCrLf & _
           "パス: " & wb.Path
End Sub

解説:

  • wb.Name … ファイル名(拡張子付き)
  • wb.FullName … パス+ファイル名の完全なフルパス
  • wb.Path … 保存先のフォルダパスのみ(末尾に\は付かない)
  • 保存していない新規ブックは Path が空文字になる

2. 保存日時や作成日時を取得

Sub ShowWorkbookDateInfo()
    Dim wb As Workbook
    Set wb = ThisWorkbook 'このマクロを含むブック
    
    MsgBox "作成日時: " & wb.BuiltinDocumentProperties("Creation Date") & vbCrLf & _
           "最終保存日時: " & wb.BuiltinDocumentProperties("Last Save Time")
End Sub

解説:

  • BuiltinDocumentProperties … ブックの組み込みプロパティにアクセスできる
  • "Creation Date" … ファイル作成日時
  • "Last Save Time" … 最終保存日時
  • 他にも "Author" や "Title" などの情報を取得可能

3. プロパティの設定例(タイトルや作成者)

Sub SetWorkbookProperties()
    Dim wb As Workbook
    Set wb = ThisWorkbook
    
    wb.BuiltinDocumentProperties("Title") = "月次報告書"
    wb.BuiltinDocumentProperties("Author") = "山田太郎"
    
    MsgBox "プロパティを設定しました。"
End Sub

解説:

  • "Title" や "Author" は直接変更できる
  • この情報はファイルのプロパティ(エクスプローラー右クリック→プロパティ→詳細)に反映される
  • 変更後は保存して初めてファイルに反映される

4. 注意点

  • プロパティ名は英語で指定する必要がある
  • 取得・設定できる項目はファイル形式や保存状態によって異なる
  • Path が空のブックはまだ保存されていないので、SaveAs メソッドで保存先を指定してからプロパティを利用するのがおすすめ

コメント

タイトルとURLをコピーしました