12
Copyright © Computer Aided Elearning, S.A. 1 XML y Excel 1. QUÉ ES XML ML (eXtensible Markup Language, lenguaje extensible de marcado) es un meta-lenguaje que sirve para definir lenguajes de marcado o de etiquetas que podemos usar para diversas funciones. ¿Qué quiere decir esto? Significa que, a través de XML, podemos definir una serie de documentos que almacenen información de forma estructurada, de forma que nos resulte sencillo trabajar con estos datos desde cualquier aplicación informática. Es decir, que con XML crearemos los lenguajes y estructuras que nos servirán para almacenar datos de facturas, clientes, libros, etc. Aparte de almacenar los datos, con XML definiremos cómo se tienen que almacenar estos datos. Por ejemplo, en la imagen anterior puedes ver un pequeño fragmento de lo que podría ser un listado de clientes en un archivo XML, para que te hagas una idea de cómo está formado. Como puedes ver se compone de distintas etiquetas, que están incluidas entre los símbolos < y >. Office 2013 dispone de soporte a XML, de forma que puedes utilizar este formato para trabajar con datos entre aplicaciones, extraer ciertos datos provenientes de otras fuentes, hacer pasar los datos entre distintas personas para que cada una trabaje con ellos, etc. X

XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

  • Upload
    lamanh

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

Copyright © Computer Aided Elearning, S.A. 1

XML y Excel

1. QUÉ ES XML

ML (eXtensible Markup Language, lenguaje extensible de

marcado) es un meta-lenguaje que sirve para definir lenguajes

de marcado o de etiquetas que podemos usar para diversas funciones.

¿Qué quiere decir esto? Significa que, a través de XML, podemos

definir una serie de documentos que almacenen información de forma

estructurada, de forma que nos resulte sencillo trabajar con estos datos

desde cualquier aplicación informática.

Es decir, que con XML crearemos los lenguajes y estructuras que

nos servirán para almacenar datos de facturas, clientes, libros, etc.

Aparte de almacenar los datos, con XML definiremos cómo se tienen

que almacenar estos datos.

Por ejemplo, en la imagen anterior puedes ver un pequeño

fragmento de lo que podría ser un listado de clientes en un archivo

XML, para que te hagas una idea de cómo está formado. Como puedes

ver se compone de distintas etiquetas, que están incluidas entre los

símbolos < y >.

Office 2013 dispone de soporte a XML, de forma que puedes

utilizar este formato para trabajar con datos entre aplicaciones, extraer

ciertos datos provenientes de otras fuentes, hacer pasar los datos entre

distintas personas para que cada una trabaje con ellos, etc.

X

Page 2: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

2

Los formatos propios de los distintos programas de ordenador en

ocasiones son incompatibles entre sí. Entonces, para compartir y

traspasar la información entre estos programas podemos usar XML, ya

que, de esta forma, los datos podrán ser leídos por las aplicaciones que

soportan este formato (que, en la actualidad, son muchas).

Además, XML puede organizar los datos de una forma

relativamente sencilla y fácil de transmitir, incluso entre distintos

sistemas operativos.

Por ejemplo, un empleado podría introducir cierta información

desde su ordenador y almacenarla en formato XML.

Desde otro ordenador podríamos acceder desde Excel a estos datos

y analizarlos, crear gráficos, etc. En este caso, el primer usuario (el que

introducía los datos) no tiene por qué trabajar desde Excel. Incluso

podría trabajar en un sistema operativo distinto de Windows.

Además de

XML y junto a

él, existe otra

serie de

lenguajes y

estándares

que servirán

para indicar

cómo se

deben mostrar

los datos en

las distintas

aplicaciones,

si deben sufrir

alguna trans-

formación al

mostrarse en

otros progra-

mas, etc.

Page 3: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

Copyright © Computer Aided Elearning, S.A. 3

Cuando acabáramos de trabajar con los datos y de realizar las

modificaciones oportunas, podríamos exportar los resultados a XML,

para que otro usuario los viera y trabajara con ellos desde otra

aplicación.

Además, el XML es un lenguaje relativamente simple, por lo que

los documentos XML son sencillos de crear. A pesar de esto, los

documentos XML están estructurados o formalizados perfectamente.

Recuerda también que el formato por defecto que utiliza Excel para

guardar sus libros está basado en XML, y se denomina Microsoft

Office Open XML.

El uso de un formato XML en los archivos de Office proporciona

varias ventajas, entre las que figuran:

Reducción del tamaño de los archivos.

Mejoras en la recuperación de datos en archivos dañados.

Más control sobre la información personal.

Mayor seguridad.

De esta forma, también se facilita el compartir datos entre

distintos programas y sistemas operativos, ya que el archivo en

formato XML puede ser leído por otro programa, accediendo a la

información almacenada.

Recuerda que la extensión de los archivos de libros de Excel es

xlsx, mientras que la extensión xlsm indica un libro que

contiene macros.

2. ASIGNACIONES XML

ara trabajar con datos XML en Excel, utilizamos lo que se

llama asignación XML.

Una asignación XML sirve para destinar celdas o rangos de celdas

a elementos del documento XML. Para que entiendas mejor esto,

primero te explicaré lo que significan los esquemas XML.

En un documento XML podemos tener almacenados una serie de

datos. También existe otra serie de documentos, que sirven para

especificar la estructura que tiene que seguir este documento XML: los

distintos elementos que tendrá, el tipo de datos que podrá almacenar,

etc.

P

Page 4: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

4

Esta estructura del documento XML se puede almacenar en DTD

(Document Type Definition, definición del tipo de documento) o en

esquemas XML (XML Schemas).

Por ejemplo, en la siguiente imagen te muestro el aspecto que

podría tener un documento XML que almacena la información de una

serie de libros, con datos como el código, el título y autor, el año, etc.

Un DTD que defina la estructura de este documento XML podría

ser el que te muestro a continuación:

Los esquemas

XML son más

potentes que

los DTD, ya

que permiten

especificar

más cosas.

Además, usan

la misma

sintaxis que

XML, mientras

que los DTD

no.

Page 5: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

Copyright © Computer Aided Elearning, S.A. 5

Y el siguiente esquema XML también sirve para especificar la

estructura de este mismo documento XML:

Observa cómo, tanto en el DTD como en el esquema XML,

indicamos los distintos campos de información que tiene cada libro.

Pues bien, Excel utiliza los esquemas XML para definir la

estructura de los documentos XML. A partir de un esquema XML dado

se creará una asignación XML, que será con la que trabajaremos en

Excel.

En el grupo de comandos XML de la pestaña Desarrollador de la

Cinta de opciones se encuentran los comandos que utilizaremos en el

trabajo con datos y archivos XML.

Con el botón se abre el panel de tareas Origen XML, desde

el que podremos trabajar con documentos XML y realizar varias

acciones relativas a este tipo de documentos.

Si pulsas el botón Asignaciones XML, que está en la parte inferior

del panel Origen XML, se abrirá una nueva ventana, desde la que

podrás ver, añadir o eliminar las asignaciones XML del libro actual.

Esta pestaña

Desarrollador

no aparece

por defecto en

el entorno

de Excel;

recuerda que

puedes

mostrarla a

través del

cuadro de las

Opciones de

Excel, activan-

do la casilla

adecuada en

la categoría

Personalizar

cinta de

opciones.

Page 6: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

6

Para añadir una asignación XML, pulsa el botón Agregar y

selecciona el archivo del esquema XML que define la estructura del

documento XML que quieres crear.

A partir del esquema XML, Excel crea una asignación XML y la

muestra en el panel de tareas Origen XML.

Entonces puedes usar esta asignación XML para relacionar las

celdas de la hoja de cálculo con los elementos del documento XML.

Para asignar los elementos XML a la hoja de cálculo, arrástralos

desde el panel Origen XML hasta la posición en que se sitúan en la

hoja de cálculo.

Excel

establece un

formato de

tabla en los

datos de la

hoja de

cálculo,

mostrando la

pestaña

contextual

Diseño con los

comandos y

opciones

relativos a la

misma al

situarte dentro

de ella.

Page 7: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

Copyright © Computer Aided Elearning, S.A. 7

De esta forma puedes asignar los distintos campos de una lista de

campos que tengas en una hoja de Excel con los distintos elementos de

un documento XML.

A continuación podrías exportar los datos que tienes en la hoja de

cálculo a un documento XML siguiendo el esquema indicado. De esta

forma, podrías utilizar estos datos directamente desde cualquier

programa que pueda leer documentos XML, sin necesidad de hacer

ninguna transformación ni ninguna conversión.

Para esto, pulsa el botón de la pestaña Desarrollador

de la Cinta de opciones e indica el nombre del archivo XML que se

creará con los datos exportados.

Uno de los muchos programas que actualmente soportan el formato

XML es Internet Explorer, por lo que incluso podrías ver los datos

exportados desde este navegador.

Además, puedes utilizar el lenguaje XSL para indicar cómo se

debe de mostrar el documento en los programas en los que veas el

documento XML.

Ten en cuenta que en cualquier momento podrías añadir o

modificar los datos desde Excel y volverlos a exportar a XML, porque

ya tienes definida la asignación adecuada.

Al establecer una asignación XML, también puedes guardar la hoja

de cálculo actual como un archivo de datos XML, seleccionando el tipo

Datos XML (*.xml) en el cuadro de diálogo de Guardar como.

Puedes

comprobar si

Excel podrá

exportar los

datos XML a

través de la

asignación

XML actual

antes de

proceder a

esta exporta-

ción, pulsando

el botón

Comprobar

asignación

para exportar,

que está en la

parte inferior

del panel

Origen XML.

Page 8: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

8

Ten en cuenta que de esta forma guardarás el libro como archivo

de datos XML, por lo que perderás muchas de las características de

Excel. En este caso, puede ser muy útil el que conserves una copia del

archivo en formato de Excel.

El lenguaje XSL (Extensible Style Language, lenguaje de hojas

de estilo extensible) permite definir cómo se mostrará un

documento XML. Puedes tener varias hojas de estilo XSL, una

para cada formato (HTML, PDF, RTF, etc.). Entonces, al abrir el

documento XML con una aplicación, se aplicará la hoja de estilo

adecuada al formato.

Por lo tanto, podemos decir que XSL es un lenguaje que

transforma un documento XML, para poder verlo de una

determinada forma en un determinado formato.

Si conoces el lenguaje CSS (Cascade Style Sheets, hojas de

estilo en cascada), que se utiliza para las páginas web de

Internet, es parecido a XSL, en el sentido que CSS indica cómo

mostrar los diferentes elementos de la página en el navegador.

Sin embargo, XSL es mucho más potente que CSS, ya que

también puedes utilizarlo para filtrar los datos según ciertas

condiciones, ordenarlos, permite ejecutar bucles, operaciones

lógicas, etc. Además, la salida no está limitada a ser mostrada

en un navegador, sino que puede ser en muchos formatos. XSL

se parece más a un lenguaje de programación que CSS, pero

tiene la desventaja de que es más complejo y consume más

recursos que CSS.

3. IMPORTAR DATOS XML

tra de las funciones existentes en Excel a la hora de trabajar

con documentos XML es importar la información que se

encuentre en un archivo XML a una hoja de cálculo de Excel.

Por ejemplo, supón que queremos crear una factura de una empresa

en Excel. Sin embargo, los datos de la factura los introduce otro

empleado desde un terminal donde no dispone de Excel.

En este caso, una solución a este problema es que el empleado

almacene la información de la factura en formato XML. Posteriormente

importaremos los datos a Excel, desde donde podremos trabajar con

ellos como ya sabemos.

Lo primero que tendríamos que hacer es crear el modelo de factura

en una hoja de cálculo de Excel, utilizando las herramientas que ya

conoces.

O

Page 9: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

Copyright © Computer Aided Elearning, S.A. 9

A continuación tendríamos que establecer la asignación XML que

utilizaremos para enlazar los campos del documento XML que

contendrá los datos de la factura con las celdas de la hoja de cálculo.

Para ello, muestra el panel Origen XML (a través del botón

de la pestaña Programador de la Cinta de opciones) y añade una

asignación XML al libro de Excel. Recuerda que tendremos que haber

creado previamente el esquema XML, que será el que se habrá

utilizado para la creación del documento XML, al introducir los datos

desde el otro equipo.

Al arrastrar los campos, en ocasiones aparecerá la etiqueta

Opciones de encabezado al lado de la celda. Desde el menú que

aparece al pulsar en ella puedes indicar si Excel incluirá un encabezado

a la izquierda o encima de la celda a la que has asignado el campo

XML.

Si en la asignación XML tienes un campo repetido, es decir, que

puede haber varias líneas con los mismos datos (por ejemplo, los

distintos artículos de una factura o de un pedido), puedes asignarlo a la

celda que representa al rótulo o encabezado de la lista, de forma que

Excel asignará los campos adecuados a las celdas correspondientes.

En los iconos

de la lista de

campos del

panel Origen

XML, el

símbolo de la

estrella

indica que ese

es un campo

requerido, es

decir, obliga-

torio, mientras

que el icono

de una flecha

hacia abajo

indica que es

un campo

repetido.

Page 10: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

10

Una vez asignes todos los campos XML a las celdas, puedes

guardar el documento en formato de libro de Excel (con extensión xlsx),

para que te pueda servir de modelo para los documentos XML que

recibas.

Antes de importar los datos puedes indicar alguna opción relativa a

este aspecto, a través del botón , que está en

la pestaña Desarrollador de la Cinta de opciones.

Por ejemplo, una opción interesante es la de Validación del

esquema XML, que indicará si Excel validará los datos con la

asignación XML al importar o exportar datos. De esta forma, te puedes

asegurar de que los datos cumplen el esquema XML que has utilizado.

Desde el apartado Al actualizar o importar los datos podrás

indicar si, al importar o actualizar los datos XML, los datos que haya en

las celdas de la hoja de cálculo se sustituirán con los del archivo XML o

si los datos del archivo XML se añadirán a los que haya en la hoja de

cálculo.

Si quieres que se mantenga el ancho de las columnas de la hoja de

cálculo al importar los datos, desactiva la opción Ajustar el ancho de

la columna.

Una vez recibas los datos, lo harás en forma de un documento

XML; entonces podrás importarlos al libro de Excel. Para esto, utiliza el

botón de la pestaña Desarrollador, seleccionando el archivo

que tenga los datos.

De esta forma podrás ver los datos de este archivo en la hoja de

Excel y podrás hacer cualquier cálculo u operación con estos datos,

crear gráficos, etc.

Page 11: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

Copyright © Computer Aided Elearning, S.A. 11

Otra posible utilidad de esta característica de Excel es completar

la información de un archivo XML.

Por ejemplo, imagínate que en el archivo XML de origen con los

datos de una factura (número, cliente, dirección, artículos, etc.)

no estuviera disponible la información de los totales de la

factura (subtotal, impuestos, total de la factura, etc.).

En este caso, en las celdas de totales de la hoja de Excel

tendrías las fórmulas que los calculasen, y tendrías que tener en

cuenta que no deberías asignar los campos de los totales del

esquema XML a las celdas de la hoja de cálculo.

Cuando hubieras importado los datos, podrías ver en las celdas

de totales de la hoja los valores correspondientes, que habrían

sido calculados por Excel.

Si a continuación quisieras exportar estos datos calculados

junto al resto de datos del archivo XML, tendrías que asignar los

campos XML a las celdas de totales y exportar los datos, con lo

que estos datos calculados por Excel se exportarían al formato

XML y podrían ser vistos y utilizados por otras aplicaciones que

soportaran el formato XML.

4. ABRIR DOCUMENTOS XML

or último, veremos otra de las posibilidades de Excel: abrir

documentos en formato XML.

El formato por defecto de los documentos de Excel 2013 está

basado en XML, por lo que, al abrir un libro guardado de esta manera,

se abrirá directamente en Excel, mostrando el contenido del documento.

Sin embargo, si abres documentos XML "normales", podrás hacerlo de

varias maneras.

Al abrir un documento XML desde Excel (es decir, con extensión

xml), desde la opción Abrir desde la vista Backstage, aparecerá el

siguiente cuadro de diálogo:

Si eliges Utilizar el panel de tareas Origen XML, para ver los

datos del archivo XML deberás arrastrar los elementos a las celdas de la

hoja de cálculo para asignarlos a celdas e importando los datos.

P

Page 12: XML y Excel - contents.cae.netcontents.cae.net/courses/curso12020403/materiales.paq/manual_excel... · ... que con XML crearemos los lenguajes y estructuras que nos servirán para

XML y Excel

12

Si, por el contrario, abres el archivo Como libro de solo lectura,

podrás ver los datos directamente en Excel, pero perderás la estructura

del archivo.

Con la opción abrir el archivo Como tabla XML, abre el archivo

en un libro nuevo de Excel, creando automáticamente el esquema XML

y su correspondiente asignación XML, en caso de que el archivo XML

no haga referencia a ningún esquema XML ya existente.

Entonces podrás trabajar con estos datos, crear gráficos o

resúmenes con ellos, exportarlos, importar nuevos datos desde otro

archivo XML que siga esta misma estructura, etc.

El botón de la pestaña Desarrollador sirve para

actualizar los datos de la asignación XML, obteniendo estos datos del

último fichero importado, mientras que con eliges el archivo

XML del que obtendrás los datos.