Conversión de formatos

Convertir Excel a XML

Sube tu planilla y descarga un XML bien formado, con un elemento por fila y los títulos convertidos en nombres válidos.

Gratis, sin límite de usos Nada se guarda en disco .xlsx,.xls,.csv

Formatos aceptados: .xlsx,.xls,.csv

Como elementos hijos, que es lo más habitual, o como atributos del elemento de fila, que produce un archivo más compacto.

Un XML que abre a la primera

El problema clásico al montar XML a mano es que un solo nombre de elemento inválido —un espacio, un acento en mal sitio, un título que empieza por número— hace que el archivo entero deje de abrirse. Aquí los nombres se sanean siempre antes de escribirlos.

La estructura es predecible: un elemento raíz que contiene un elemento por cada fila de datos, y dentro de cada fila un campo por columna. La primera fila de la hoja se usa como nombres de campo, así que es obligatoria.

Nombres de elemento saneados

Los títulos de columna se convierten en nombres XML válidos: cualquier carácter no permitido se sustituye por _, y si el nombre resultante empieza por un carácter que no puede iniciar un nombre XML se le antepone un _. Un título vacío o que quede vacío tras sanear recibe un nombre de reserva columna1, columna2, etc.

Puedes cambiar el nombre del elemento raíz (por defecto datos) y el del elemento de fila (por defecto fila). Ambos pasan por el mismo saneado, así que si escribes algo inválido se corrige en lugar de romper el archivo.

Elementos o atributos

La opción estilo decide cómo se guardan los valores de cada fila:

  • Elementos pone cada valor en su propio elemento hijo: <fila><nombre>Ana</nombre></fila>. Es lo más legible y lo que esperan la mayoría de las hojas de transformación.
  • Atributos pone los valores como atributos del elemento de fila: <fila nombre="Ana" />. Ocupa menos y va bien cuando cada fila son datos cortos y planos.

En ambos casos los valores se escriben con el escapado propio de XML: los caracteres reservados como <, > y &, y las comillas cuando van en un atributo, se convierten en sus entidades. El archivo siempre queda bien formado.

Formato de los valores

Los valores se emiten en formato neutro, no según la configuración regional: punto decimal en los números y fechas AAAA-MM-DD. El documento lleva su declaración <?xml version="1.0" encoding="utf-8"?> y se descarga en UTF-8 con marca BOM, de modo que los acentos y las eñes se conservan al abrirlo en cualquier parser.

Preguntas frecuentes

¿Genera un esquema (XSD) o un DTD?

No. Se genera solo el documento de datos, bien formado. Si tu proceso necesita validar contra un esquema, tendrás que aportarlo aparte.

¿Qué pasa si dos columnas tienen el mismo título?

Ambas producen elementos —o atributos— con el mismo nombre. Con elementos eso es XML válido y quedan los dos; con atributos, un elemento no puede repetir un atributo, así que conviene renombrar la columna antes de convertir.

¿Convierte todas las hojas del libro?

Solo la primera. Para las demás, conviértelas por separado y ajusta el nombre del elemento raíz en cada pasada.

¿Se conservan los tipos de dato?

El XML es texto: todos los valores salen como cadenas, pero en formato neutro y sin ambigüedad. Si necesitas que los números sigan siendo números para el consumidor, usa Excel a JSON.

¿Y las fórmulas y los formatos?

Se exporta el valor calculado de cada celda; las fórmulas y el formato visual no se conservan. Para conservar la presentación mira Excel a HTML.