En esta entrada voy a mostrar 2 ejemplos de cómo usar Microsoft Excel y Word para leer el cambio del euro a otras divisas en tiempo real desde nuestros proyectos. Emplearé la lectura de XML y la búsqueda mediante xPATH del valor deseado.
Ambos ficheros poseen macros asociadas. Por lo que los formatos cambian de xlsx a xlsm en Microsoft Excel y docx a docm en Word. El ejemplo creado en el botón de Word, es aplicable en otros productos de la suite de Office como Powerpoint y Access. Sin necesidad de insertar controles OCX y ActiveX.
Están realizados en Office 2016, por lo que podrían ser usadas por otras versiones futuras.
La URL es un XML retornado que similar a un webservice ofrece el Banco Central Europeo. Nos vamos a apoyar en este fichero para la lectura de los nodos con los valores del cambio para ambos ejemplos. La información diariamente. La fecha de cambio aparece en el propio fichero que podemos consultar con cualquier navegador.
La URL del servicio web muestra la siguiente información:
Lectura cambios del EURO desde EXCEL
Mediante este ejemplo podremos tener nuestras hojas de cálculo actualizadas sin necesidad de copiar e ir a por el dato a Internet, ya que nuestra hoja lo hace por nosotros automáticamente.
El resultado de la función aplicada en la celda A1:
=SERVICIOWEB(“https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml”)
Es una línea que devuelve una cadena con la consulta al servicio web (fichero xml) retornado.
Posteriormente con al formula inferior, recorreremos mediante la función XMLFiltro que emplea Xpath los nodos retornados:
=XMLFILTRO(B1;”//Cube/@currency”) devolvemos el nombre de la divisa, en este caso USD.
Con la función:
=XMLFILTRO(B1;”//Cube/@rate”) , nos ofrece el valor de retorno
Podremos recorrer entre valores del path XML con la siguiente sintaxis, ojo, es necesario respetarla puesto que es muy restrictiva desde Excel:
XMLFILTRO(B1;”//Cube[2]/@currency”)
Lectura de cambios desde WORD
Para ello hemos creado un botón desde la pestaña desarrollador. Es necesario que se encuentre activo el modo diseño. Una vez dadas las propiedades al botón, si hacemos doble clic podremos generar el evento que conecta con la URL que posee el XML.
Es necesario darse cuenta de cómo se accede a los nodos mediante el path. También los objetos que se han creado sin necesidad de añadir referencias desde Word 2016.
Para descargar el fichero docm, es necesario pulsar en la imagen inferior. Aunque con las ayudas visuales puedes intentarlo tú mismo. Saludos.
Otras aplicaciones de OFFICE.
El ejemplo creado en el botón de Word, es aplicable en otros productos de la suite de Office como Powerpoint y Access. Sin necesidad de insertar controles OCX y ActiveX.
Excelente aporte !!.
Gracias por facilitarnos el trabajo
Una pegrunta: Si deseara actualizar los datos desde otra web, por ejemplo Yahoo, ¿cómo localizar la URL que contiene el XML ?
Un cordial saludo
Juan