ブックが持っている作成者等の情報(組み込みプロパティ)の取得とプロパティを削除する方法です。
目次
ブックの情報取得
エクセルシートのA列とB列にブックの情報を書き出す例です。
- A列:組み込みプロパティ
- B列:値
書き出しは2行目からです。
書き出し後の画面です。
情報の確認画面
取得する情報は以下の画面から確認できます。
[ファイル]>[情報]
画面の右側に組み込みプロパティがあります。
もしくは閉じているブックを右クリックして、[プロパティ]>[詳細]タブでも確認できます。
サンプルコード
WorkbookクラスのBuiltinDocumentPropertiesプロパティを使用して組み込みプロパティを取得します。
BuiltinDocumentProperties
Sub sample1() On Error Resume Next Dim p As DocumentProperty Dim i As Long: i = 2 For Each p In ActiveWorkbook.BuiltinDocumentProperties Cells(i, 1) = p.Name Cells(i, 2) = p.Value i = i + 1 Next End Sub
2行目:存在していない組み込みプロパティの値を取得しようとするとエラーになるため
すべてのプロパティ削除
Workbook.RemoveDocumentInformation メソッドでブックから情報を削除できます。
式
RemoveDocumentInformation データ型
データ型は「xlRDIDocumentServerProperties」を指定します。
アクティブブックのプロパティを削除する例です。
Sub sample2() ActiveWorkbook.RemoveDocumentInformation xlRDIDocumentProperties End Sub
特定のプロパティのみ変更したい場合
タイトルと作成者を削除する例です。
Sub sample3() With ActiveWorkbook With .BuiltinDocumentProperties .Item("Title").Value = Empty .Item("Author").Value = Empty End With End With End Sub
消すのではなく変更する場合は「Empty」を変更したい値にします。
例:.Item("Title").Value = "テスト"