Consultar áreas de celdas mapeadas a la ruta del mapa XML usando el método Worksheet.XmlMapQuery
Escenarios de uso posibles
Puede consultar áreas de celdas asignadas a la ruta del mapa XML con Aspose.Cells utilizando el método Worksheet.XmlMapQuery(). Si la ruta existe, devolverá la lista de áreas de celdas relacionadas con esa ruta dentro del mapa XML. El primer parámetro del método Worksheet.XmlMapQuery() especifica la ruta del elemento XML y el segundo parámetro especifica un mapa XML que desea consultar.
Consultar áreas de celdas mapeadas a la ruta del mapa XML utilizando el método Worksheet.XmlMapQuery
La siguiente captura de pantalla muestra Microsoft Excel mostrando Mapa XML dentro del archivo de Excel de muestra utilizado en el código. El código consulta el mapa XML dos veces e imprime la lista de áreas de celdas devueltas por el método Worksheet.XmlMapQuery() en la consola como se muestra a continuación.
Código de muestra
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load sample Excel file having Xml Map | |
Workbook wb = new Workbook("sampleXmlMapQuery.xlsx"); | |
//Access first XML Map | |
XmlMap xmap = wb.Worksheets.XmlMaps[0]; | |
//Access first worksheet | |
Worksheet ws = wb.Worksheets[0]; | |
//Query Xml Map from Path - /MiscData | |
Console.WriteLine("Query Xml Map from Path - /MiscData"); | |
ArrayList ret = ws.XmlMapQuery("/MiscData", xmap); | |
//Print returned ArrayList values | |
for (int i = 0; i < ret.Count; i++) | |
{ | |
Console.WriteLine(ret[i]); | |
} | |
Console.WriteLine(""); | |
//Query Xml Map from Path - /MiscData/row/Color | |
Console.WriteLine("Query Xml Map from Path - /MiscData/row/Color"); | |
ret = ws.XmlMapQuery("/MiscData/row/Color", xmap); | |
//Print returned ArrayList values | |
for (int i = 0; i < ret.Count; i++) | |
{ | |
Console.WriteLine(ret[i]); | |
} |
Salida de la consola
Query Xml Map from Path - /MiscData
Aspose.Cells.CellArea(A1:A8)[0,0,7,0]
Aspose.Cells.CellArea(B1:B8)[0,1,7,1]
Aspose.Cells.CellArea(C1:C8)[0,2,7,2]
Aspose.Cells.CellArea(D1:D8)[0,3,7,3]
Aspose.Cells.CellArea(E1:E8)[0,4,7,4]
Query Xml Map from Path - /MiscData/row/Color
Aspose.Cells.CellArea(D1:D8)[0,3,7,3]
Obtener ruta XML desde Objeto de Lista/Tabla
Los datos XML se pueden importar a hojas de cálculo. A veces se requiere la ruta XML de los ListObjects de la hoja de cálculo. Esta característica está disponible en Excel mediante el uso de una expresión como Sheet1.ListObjects(1).XmlMap.DataBinding. La misma característica está disponible en Aspose.Cells llamando a ListObject.XmlMap.DataBinding.Url. El siguiente ejemplo demuestra esta característica. El archivo de plantilla y otros archivos fuente se pueden descargar desde los siguientes enlaces:
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// Load XLSX file containing data from XML file | |
Workbook workbook = new Workbook("XML Data.xlsx"); | |
// Access the first worksheet | |
Worksheet ws = workbook.Worksheets[0]; | |
// Access ListObject from the first sheet | |
Aspose.Cells.Tables.ListObject listObject = ws.ListObjects[0]; | |
// Get the url of the list object's xml map data binding | |
string url = listObject.XmlMap.DataBinding.Url; | |
// Display XML file name | |
Console.WriteLine(url); |