方法 : ドキュメント プロパティの読み込みと書き込みを行う
更新 : 2007 年 11 月
対象 |
---|
このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。 プロジェクトの種類
Microsoft Office のバージョン
詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。 |
Microsoft Office Word および Microsoft Office Excel では、ドキュメント レベルのカスタマイズにある文書またはブックにドキュメント プロパティを格納できます。Excel と Word のどちらにも、作成者、タイトル、サブタイトルなどの組み込みのプロパティがあります。
Excel のドキュメント プロパティの設定
組み込みプロパティを操作するには、ThisWorkbook クラスの BuiltinDocumentProperties プロパティを使用します。このプロパティは、DocumentProperty オブジェクトのコレクションである DocumentProperties オブジェクトを返します。このコレクションの Item プロパティを使用すると、名前またはコレクション内のインデックスを利用して、特定のプロパティを取得できます。
Excel の Revision Number プロパティを変更するには
組み込みのドキュメント プロパティを変数に代入します。
Dim properties As Microsoft.Office.Core.DocumentProperties properties = DirectCast(Globals.ThisWorkbook.BuiltinDocumentProperties, _ Microsoft.Office.Core.DocumentProperties) Dim prop As Microsoft.Office.Core.DocumentProperty prop = properties.Item("Revision Number")
Microsoft.Office.Core.DocumentProperties properties; properties = (Microsoft.Office.Core.DocumentProperties) Globals.ThisWorkbook.BuiltinDocumentProperties; Microsoft.Office.Core.DocumentProperty prop; prop = properties["Revision Number"];
Revision Number プロパティの値を 1 つ増加させます。
If prop.Value Is Nothing Then prop.Value = 1 Else Dim revision As Integer If Integer.TryParse(prop.Value.ToString(), revision) Then prop.Value = revision + 1 MessageBox.Show("Revision Number = " & revision) Else MessageBox.Show("Revision Number = invalid value") End If End If
if (prop.Value == null) { prop.Value = 1; } else { int revision; if (int.TryParse((string)prop.Value, out revision)) { prop.Value = revision + 1; MessageBox.Show("Revision Number = " + revision); } else { MessageBox.Show("Revision Number = invalid value"); } }
Word のドキュメント プロパティの設定
組み込みプロパティを操作するには、ThisDocument クラスの BuiltInDocumentProperties プロパティを使用します。このプロパティは、DocumentProperty オブジェクトのコレクションである DocumentProperties オブジェクトを返します。このコレクションの Item プロパティを使用すると、名前またはコレクション内のインデックスを利用して、特定のプロパティを取得できます。
Subject プロパティを変更するには
組み込みのドキュメント プロパティを変数に代入します。
Dim properties As Microsoft.Office.Core.DocumentProperties properties = DirectCast(Globals.ThisDocument.BuiltInDocumentProperties, _ Microsoft.Office.Core.DocumentProperties)
Microsoft.Office.Core.DocumentProperties properties; properties = (Microsoft.Office.Core.DocumentProperties) Globals.ThisDocument.BuiltInDocumentProperties;
Subject プロパティを "Whitepaper" に変更します。
' Set the Subject property. properties.Item("Subject").Value = "Whitepaper"
// Set the Subject property. properties["Subject"].Value = "Whitepaper";
堅牢性の高いプログラム
この例は、Excel の場合は ThisWorkbook クラス、Word の場合は ThisDocument クラスにコードを記述していることを前提としています。
Word と Word オブジェクトまたは Excel と Excel オブジェクトを操作している場合も、Microsoft Office では、使用可能な組み込みドキュメント プロパティの一覧が表示されます。未定義のプロパティに関して Value プロパティへのアクセスを試みると、例外が発生します。
参照
処理手順
方法 : カスタム ドキュメント プロパティを作成および変更する