La función FILTERXML devuelve datos específicos del contenido XML utilizando el xpath especificado.
Nota
- La función FILTERXML no está disponible en Excel para la Web y Excel para Mac.
- Esta función puede aparecer en la galería de funciones de Excel para Mac, pero se basa en características del sistema operativo Windows, por lo que no devolverá resultados en Mac.
Sintaxis
XMLFILTRO(xml, xpath)
La sintaxis de la función XMLFILTRO tiene los siguientes argumentos:
| Argumento | Descripción |
|---|---|
|
XML Requerido |
Una cadena en formato XML válido |
|
XPath Requerido |
Una cadena en formato XPath estándar |
Nota
- Si xml no es válido, FILTERXML devuelve el #VALUE. error #¡NUM!.
- Si xml contiene un espacio de nombres con un prefijo que no es válido, FILTERXML devuelve el #VALUE. error #¡NUM!.
Ejemplos
En este ejemplo se utiliza la función FILTERXML en los datos XML devueltos en la celda B2, proporcionada por los resultados de la función SERVICIOWEB en la consulta web de la celda B1.
Los datos de FILTERXML se devuelven en las celdas B3:B5 y C3:C5, y muestran los tres resultados de consultas actualizados más recientemente en Wikipedia y la hora de sus actualizaciones (en UTC, "Hora Universal Coordinada").
Las celdas B3:B5 contienen la fórmula =FILTERXML(B3,"//rc/@title").
Las celdas C3:C5 contienen la fórmula =FILTERXML(B3,"//rc/@timestamp").Nota
Si tiene una versión actual de Microsoft 365, basta con que escriba la fórmula en la celda superior izquierda del rango de salida y después presione Entrar para confirmar la fórmula como una fórmula de matriz dinámica. En caso contrario, la fórmula debe especificarse como una fórmula de matriz heredada, primero seleccione el rango de salida, introduzca la fórmula en la celda superior izquierda del rango de salida y después presione CTRL+MAYÚS+ENTRAR para confirmarlo. Excel inserta llaves al principio y al final de la fórmula por usted. Para obtener más información sobre las fórmulas de matriz, vea Directrices y ejemplos de fórmulas de matriz.
También puede utilizar FILTERXML junto con las funciones ENCODEURL y WEBSERVICE . Por ejemplo, puede usar el servicio de API de markitondemand.com para devolver información sobre acciones de una empresa:
=WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
Donde tiene un símbolo de acciones en la celda C2.
Puede usar la función FILTERXML para extraer datos específicos sobre ese valor. Por ejemplo, para obtener el último precio del símbolo de cotizaciones en la celda C2, puede usar:
=FILTERXML(WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2)),"//QuoteApiModel/Data/LastPrice")
¿Necesitas más ayuda?
Siempre puede preguntar a un experto en Excel Tech Community u obtener soporte técnico en Comunidades.