WorkbookBase.XmlImport(String, XmlMap, Object, Object) Метод

Определение

Выполняет импорт XML-файла данных в текущую книгу.

public Microsoft.Office.Interop.Excel.XlXmlImportResult XmlImport (string url, out Microsoft.Office.Interop.Excel.XmlMap importMap, object overwrite, object destination);
member this.XmlImport : string * XmlMap * obj * obj -> Microsoft.Office.Interop.Excel.XlXmlImportResult
Public Function XmlImport (url As String, ByRef importMap As XmlMap, Optional overwrite As Object, Optional destination As Object) As XlXmlImportResult

Параметры

url
String

URL-адрес или UNC-путь для XML-файла данных.

importMap
XmlMap

Проекция схемы, применяемая при импорте файла.

overwrite
Object

Если для параметра не указано Destination значение, то этот параметр указывает, следует ли перезаписать данные, сопоставленные с картой схемы, указанной в параметре ImportMap . Значение true для перезаписи данных, значение false для добавления новых данных к существующим. Значение по умолчанию — true. Если для Destination параметра задано значение, то этот параметр указывает, следует ли перезаписывать существующие данные. Значение true для перезаписи существующих данных, значение false для отмены импорта, если данные подлежат замене. Значение по умолчанию — true.

destination
Object

Данные импортируются в новый XML-список в указанном диапазоне Range.

Возвращаемое значение

Одно из значений перечисления XlXmlImportResult.

Примеры

В следующем примере кода создается XmlMap на основе схемы, созданной DataSetиз , записывает DataSet в XML-файл, а затем использует XmlImport метод для записи данных из XML-файла в диапазон на листе Sheet1.

Этот пример предназначен для настройки на уровне документа.

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);
}
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

Комментарии

Не указывайте значение параметра, Destination если вы хотите импортировать данные в существующее сопоставление.

Следующие условия приведут к возникновению ошибок во время выполнения в этом методе:

  • Указанные XML-данные содержат синтаксические ошибки.

  • Процесс импорта был отменен, так как указанные данные не помещаются в лист.

Используйте метод для XmlImportXml импорта XML-данных, которые ранее были загружены в память.

Необязательные параметры

Сведения о необязательных параметрах см. в разделе Необязательные параметры в решениях Office.

Применяется к