次の方法で共有


WorkbookBase.XmlImport メソッド

XML データ ファイルを現在のブックにインポートします。

名前空間:  Microsoft.Office.Tools.Excel
アセンブリ:  Microsoft.Office.Tools.Excel.v4.0.Utilities (Microsoft.Office.Tools.Excel.v4.0.Utilities.dll 内)

構文

'宣言
Public Function XmlImport ( _
    url As String, _
    <OutAttribute> ByRef importMap As XmlMap, _
    overwrite As Object, _
    destination As Object _
) As XlXmlImportResult
public XlXmlImportResult XmlImport(
    string url,
    out XmlMap importMap,
    Object overwrite,
    Object destination
)

パラメーター

  • url
    型 : System.String
    XML データ ファイルの URL (Uniform Resource Locator) または UNC (Uniform Naming Convention) パスです。
  • overwrite
    型 : System.Object
    Destination パラメーターに値が設定されていない場合、このパラメーターは、ImportMap パラメーターで指定されたスキーマ マップにマップされたデータを上書きするかどうかを指定します。 true に設定するとデータを上書きし、false に設定すると新しいデータを既存のデータに追加します。既定値は true です。 Destination パラメーターに値が指定されている場合、このパラメーターは既存のデータを上書きするかどうかを指定します。 true に設定すると既存のデータを上書きし、false に設定すると、インポートをキャンセルしてデータが上書きされないようにします。既定値は true です。
  • destination
    型 : System.Object
    指定されている Range にある新しい XML リストにデータがインポートされます。

戻り値

型 : Microsoft.Office.Interop.Excel.XlXmlImportResult
XlXmlImportResult 値のいずれか。

解説

既存のマッピングにデータをインポートする場合は、Destination パラメーターに値を指定しないでください。

次の条件がある場合、このメソッドを呼び出すとランタイム エラーが発生します。

  • 指定された XML データに構文エラーがある。

  • 指定されたデータがワークシートに収まらなかったためにインポート プロセスがキャンセルされた。

メモリに読み込まれている XML データをインポートするには、XmlImportXml メソッドを使用します。

省略可能なパラメーター

省略可能なパラメーターについては、「Office ソリューションの省略可能なパラメーター」を参照してください。

次のコード例では、DataSet から生成されたスキーマに基づいて XmlMap を作成し、DataSet を XML ファイルに書き込んだ後、XmlImport メソッドを使用して、XML ファイル内のデータを、Sheet1 ワークシート内の範囲に書き込みます。

この例は、ドキュメント レベルのカスタマイズ用に作成されています。

Private Sub WorkbookXmlImport()

    ' Create a new DataTable.
    Dim ds As New DataSet()
    Dim dt As DataTable = ds.Tables.Add("Customers")
    dt.Columns.Add(New DataColumn("LastName"))
    dt.Columns.Add(New DataColumn("FirstName"))

    ' Add a new row to the DataTable.
    Dim dr As DataRow = dt.NewRow()
    dr("LastName") = "Chan"
    dr("FirstName") = "Gareth"
    dt.Rows.Add(dr)

    ' Add a new XML map and write the XML to a file.
    Dim xmlMap1 As Excel.XmlMap = Me.XmlMaps.Add(ds.GetXmlSchema(), _
        "NewDataSet")
    ds.WriteXml("C:\Customers.xml")

    ' Import the XML from the file.
    Dim range1 As Excel.Range = Globals.Sheet1.Range("A1")
    Me.XmlImport("C:\Customers.xml", xmlMap1, True, _
        range1)
End Sub
private void WorkbookXmlImport()
{
    // Create a new DataTable.
    DataSet ds = new DataSet();
    DataTable dt = ds.Tables.Add("Customers");
    dt.Columns.Add(new DataColumn("LastName"));
    dt.Columns.Add(new DataColumn("FirstName"));

    // Add a new row to the DataTable.
    DataRow dr = dt.NewRow();
    dr["LastName"] = "Chan";
    dr["FirstName"] = "Gareth";
    dt.Rows.Add(dr);

    // Add a new XML map and write the XML to a file.
    Excel.XmlMap xmlMap1 = this.XmlMaps.Add(ds.GetXmlSchema(),
        "NewDataSet");
    ds.WriteXml(@"C:\Customers.xml");

    // Import the XML from the file.
    Excel.Range range1 = Globals.Sheet1.Range["A1"];
    this.XmlImport(@"C:\Customers.xml", out xmlMap1, true, range1);
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

WorkbookBase クラス

Microsoft.Office.Tools.Excel 名前空間