Udostępnij za pośrednictwem


WorksheetBase.XmlDataQuery Method

Gets a Range object that represents the cells mapped to a particular XPath. Gets nulla null reference (Nothing in Visual Basic) if the specified XPath has not been mapped to the worksheet, or if the mapped range is empty.

Namespace:  Microsoft.Office.Tools.Excel
Assembly:  Microsoft.Office.Tools.Excel.v4.0.Utilities (in Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)

Syntax

'Declaration
Public Function XmlDataQuery ( _
    xPath As String, _
    selectionNamespaces As Object, _
    map As Object _
) As Range
public Range XmlDataQuery(
    string xPath,
    Object selectionNamespaces,
    Object map
)

Parameters

  • selectionNamespaces
    Type: System.Object
    A space-delimited string that contains the namespaces referenced in the XPath parameter. A run-time error is generated if one of the specified namespaces cannot be resolved.
  • map
    Type: System.Object
    An XmlMap. Specify an XML map if you want to query for the XPath within a specific map.

Return Value

Type: Microsoft.Office.Interop.Excel.Range
A Range object that represents the cells mapped to a particular XPath; nulla null reference (Nothing in Visual Basic) if the specified XPath has not been mapped to the worksheet, or if the mapped range is empty.

Remarks

XML features, except for saving files in the XML Spreadsheet format, are available only in Microsoft Office Professional Edition 2003 and Microsoft Office Excel 2003.

If the XPath exists within a column in an XML list, the Range object returned does not include the header row or the Insert row.

Optional Parameters

For information on optional parameters, see Optional Parameters in Office Solutions.

Examples

The following code example uses the XmlDataQuery method to get the Range of cells mapped to a particular XPath.

This example is for a document-level customization.

Private Sub WorksheetQueryXmlData()
    Dim path As String = "/order/customer/address"
    Dim namespaces As String = "xmlns=https://www.contoso.com/orders"

    Dim range1 As Excel.Range = _
        Me.XmlDataQuery(path, namespaces)

    If range1 Is Nothing Then
        MsgBox("The specified XPath: '" & path & _
            "' has not been mapped to the worksheet, or the mapped " & _
                "range is empty.")
    End If
End Sub
private void WorksheetQueryXmlData()
{
    string path = "/order/customer/address";
    string namespaces = "xmlns=https://www.contoso.com/orders";

    Excel.Range range1 = this.XmlDataQuery(path, namespaces, missing);

    if (range1 == null)
    {
        MessageBox.Show("The specified XPath: '" + path + 
            "' has not been mapped to the worksheet, or the mapped " +
            "range is empty.");
    }
}

.NET Framework Security

See Also

Reference

WorksheetBase Class

Microsoft.Office.Tools.Excel Namespace