次の方法で共有


方法 : ドキュメント レベルのカスタマイズにカスタム XML 部分を追加する

更新 : 2007 年 11 月

対象

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

プロジェクトの種類

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

Microsoft Office のバージョン

  • Excel 2007

  • Word 2007

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

ドキュメント レベルのカスタマイズにカスタム XML 部分を作成することで、Microsoft Office Excel ブックまたは Microsoft Office Word 文書に XML データを格納できます。詳細については、「カスタム XML 部分の概要」を参照してください。

Bb608627.alert_note(ja-jp,VS.90).gifメモ :

Visual Studio Tools for Office では、Microsoft Office PowerPoint のドキュメント レベルのプロジェクトは提供していません。アプリケーション レベルのアドインを使用した PowerPoint プレゼンテーションへのカスタム XML 部分の追加に関する詳細については、「方法 : アプリケーション レベルのアドインを使用してドキュメントにカスタム XML 部分を追加する」を参照してください。

Excel ブックにカスタム XML 部分を追加するには

  1. ブック内の Microsoft.Office.Core.CustomXMLParts コレクションに Microsoft.Office.Core.CustomXMLPart オブジェクトを追加します。Microsoft.Office.Core.CustomXMLPart には、ブックに格納する XML 文字列が含まれています。

    Private Sub AddCustomXmlPartToWorkbook()
        Dim xmlString As String = _
            "<?xml version=""1.0"" encoding=""utf-8"" ?>" & _
                "<employees https://schemas.microsoft.com/vsto/samples"">" & _
                    "<employee>" & _
                        "<name>Karina Leal</name>" & _
                        "<hireDate>1999-04-01</hireDate>" & _
                        "<title>Manager</title>" & _
                    "</employee>" & _
                "</employees>"
        Dim employeeXMLPart As Office.CustomXMLPart = Me.CustomXMLParts.Add(xmlString)
    End Sub
    
    private void AddCustomXmlPartToWorkbook()
    {
        string xmlString =
            "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
            "<employees xmlns=\"https://schemas.microsoft.com/vsto/samples\">" +
                "<employee>" +
                    "<name>Karina Leal</name>" +
                    "<hireDate>1999-04-01</hireDate>" +
                    "<title>Manager</title>" +
                "</employee>" +
            "</employees>";
    
        Office.CustomXMLPart employeeXMLPart = this.CustomXMLParts.Add(xmlString, missing);
    }
    
  2. Excel 2007 用のドキュメント レベルのプロジェクト内の ThisWorkbook クラスに AddCustomXmlPartToWorkbook メソッドを追加します。

  3. このメソッドをプロジェクト内の他のコードから呼び出します。たとえば、ユーザーがブックを開いたときにカスタム XML 部分を作成するには、このメソッドを ThisWorkbook_Startup イベント ハンドラから呼び出します。

Word 文書にカスタム XML 部分を追加するには

  1. 文書内の Microsoft.Office.Core.CustomXMLParts コレクションに Microsoft.Office.Core.CustomXMLPart オブジェクトを追加します。Microsoft.Office.Core.CustomXMLPart には、文書に格納する XML 文字列が含まれます。

    Private Sub AddCustomXmlPartToDocument()
        Dim xmlString As String = _
            "<?xml version=""1.0"" encoding=""utf-8"" ?>" & _
                "<employees https://schemas.microsoft.com/vsto/samples"">" & _
                    "<employee>" & _
                        "<name>Karina Leal</name>" & _
                        "<hireDate>1999-04-01</hireDate>" & _
                        "<title>Manager</title>" & _
                    "</employee>" & _
                "</employees>"
    
        Dim employeeXMLPart As Office.CustomXMLPart = _
            Me.CustomXMLParts.Add(xmlString)
    End Sub
    
    private void AddCustomXmlPartToDocument()
    {
        string xmlString =
            "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
            "<employees xmlns=\"https://schemas.microsoft.com/vsto/samples\">" +
                "<employee>" +
                    "<name>Karina Leal</name>" +
                    "<hireDate>1999-04-01</hireDate>" +
                    "<title>Manager</title>" +
                "</employee>" +
            "</employees>";
    
        Office.CustomXMLPart employeeXMLPart = this.CustomXMLParts.Add(xmlString, missing);
    }
    
  2. Word 2007 用のドキュメント レベルのプロジェクト内の ThisDocument クラスに AddCustomXmlPartToDocument メソッドを追加します。

  3. このメソッドをプロジェクト内の他のコードから呼び出します。たとえば、ユーザーが文書を開いたときにカスタム XML 部分を作成するには、このメソッドを ThisDocument_Startup イベント ハンドラから呼び出します。

堅牢性の高いプログラム

簡略化のために、この例ではメソッドにローカル変数として定義された XML 文字列を使用しています。通常は、ファイルやデータベースなどの外部ソースから XML 文字列を取得する必要があります。

参照

処理手順

方法 : アプリケーション レベルのアドインを使用してドキュメントにカスタム XML 部分を追加する

方法 : Microsoft Office を起動せずにカスタム XML 部分を文書に追加する

概念

カスタム XML 部分の概要