次の方法で共有


方法 : ドキュメント プロパティの読み込みと書き込みを行う

更新 : 2007 年 11 月

対象

このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。

プロジェクトの種類

  • ドキュメント レベルのプロジェクト

Microsoft Office のバージョン

  • 2007 Microsoft Office system

  • Microsoft Office 2003

詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

Microsoft Office Word および Microsoft Office Excel では、ドキュメント レベルのカスタマイズにある文書またはブックにドキュメント プロパティを格納できます。Excel と Word のどちらにも、作成者、タイトル、サブタイトルなどの組み込みのプロパティがあります。

Excel のドキュメント プロパティの設定

組み込みプロパティを操作するには、ThisWorkbook クラスの BuiltinDocumentProperties プロパティを使用します。このプロパティは、DocumentProperty オブジェクトのコレクションである DocumentProperties オブジェクトを返します。このコレクションの Item プロパティを使用すると、名前またはコレクション内のインデックスを利用して、特定のプロパティを取得できます。

Excel の Revision Number プロパティを変更するには

  1. 組み込みのドキュメント プロパティを変数に代入します。

    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"]; 
    
  2. 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 プロパティを変更するには

  1. 組み込みのドキュメント プロパティを変数に代入します。

    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; 
    
  2. 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 プロパティへのアクセスを試みると、例外が発生します。

参照

処理手順

方法 : カスタム ドキュメント プロパティを作成および変更する

概念

ドキュメント レベルのカスタマイズのプログラミング