
Se lavori con dati che devono essere condivisi tra software, API o siti web, la conversione da Excel a XML è un'abilità fondamentale. XML (Extensible Markup Language) è un formato universale e leggibile dalle macchine, ideale per lo scambio di dati, mentre Excel eccelle nell'organizzazione di fogli di calcolo. Colmare il divario tra i due consente ai tuoi dati di fluire senza interruzioni tra le piattaforme.
Che tu sia un principiante alla ricerca di una soluzione rapida, un analista che garantisce l'integrità dei dati o uno sviluppatore che crea una pipeline automatizzata, questa guida ti illustrerà tre metodi di conversione da Excel a XML efficaci e privi di errori.
- Metodo 1: Conversione manuale da Excel a XML (scheda Sviluppo integrata)
- Metodo 2: Convertitori online gratuiti da Excel a XML
- Metodo 3: Automatizzare la conversione da Excel a XML in Python
Perché convertire Excel in XML?
Il valore principale della conversione da Excel a XML risiede in:
- Compatibilità multipiattaforma: XML funziona con API, piattaforme CMS (WordPress, Shopify), strumenti aziendali (SAP, Salesforce) e linguaggi di programmazione (Python, Java).
- Dati strutturati: XML conserva le righe/colonne di Excel come elementi con tag (ad es.
<prodotto><nome>Laptop</nome><prezzo>999</prezzo></prodotto>), rendendolo facile da analizzare per il software. - Integrità dei dati: XML evita problemi di formattazione che affliggono i file Excel (ad es. formule interrotte, celle unite) quando condivisi tra sistemi.
- Casi d'uso: feed di prodotti per l'e-commerce, esportazioni di dati da API, importazioni di contenuti CMS e integrazione di dati aziendali.
Strutturare i dati di Excel per una conversione di successo
Il primo e più critico passaggio avviene in Excel. Un foglio di origine ben strutturato garantisce una conversione senza problemi.
- Utilizza intestazioni di colonna uniche e brevi (senza spazi/caratteri speciali, ad es. "NomeProdotto" invece di "Nome Prodotto").
- Rimuovi righe/colonne vuote (causano errori di convalida XML).
- Garantisci tipi di dati coerenti (ad es. tutti i prezzi come numeri, date in un formato uniforme).
- Evita celle unite o formule complesse; utilizza invece dati grezzi.
Metodo 1: Conversione manuale da Excel a XML (scheda Sviluppo integrata)
La scheda Sviluppo integrata di Excel fornisce supporto nativo per le attività XML, rendendola accessibile agli utenti di Excel senza conoscenze di programmazione.
Guida passo passo:
Passaggio 1: prepara i tuoi dati Excel
Struttura i tuoi dati in un formato tabellare chiaro. La prima riga dovrebbe contenere le intestazioni delle colonne, che diventeranno i tuoi tag XML. Per questo esempio, usiamo un semplice elenco di prodotti:

Passaggio 2: crea uno schema XML
Uno schema XML (file .xsd) definisce la struttura del tuo output XML. Specifica quali tag utilizzare e come si relazionano tra loro.
Schema di esempio (salvalo come "products.xsd" sul tuo computer):
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Catalog">
<xs:complexType>
<xs:sequence>
<xs:element name="Product" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:integer"/>
<xs:element name="ProductName" type="xs:string"/>
<xs:element name="Category" type="xs:string"/>
<xs:element name="Price" type="xs:decimal"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
- Regola gli attributi `name` in modo che corrispondano alle intestazioni delle colonne di Excel (sensibile alle maiuscole).
- Usa tipi appropriati (ad es. xsd:integer per i numeri, xsd:string per il testo).
Passaggio 3: aggiungi lo schema a Excel
- Apri il tuo file Excel.
- Vai alla scheda Sviluppo. (Se non la vedi, vai su File > Opzioni > Personalizza barra multifunzione, seleziona "Sviluppo" e fai clic su "OK".)
- Nella scheda Sviluppo, fai clic su Origine per aprire il riquadro Origine XML.
- Fai clic su Mappe XML... e poi su Aggiungi....
- Allega il file di schema .xsd che hai creato utilizzando la finestra di dialogo Mappe XML

Passaggio 4: mappa gli elementi XML alle tue celle
- Nel riquadro Origine XML, vedrai i tuoi elementi ("Catalogo", "Prodotto", "ID", ecc.).
- Trascina l'elemento "Prodotto" e rilascialo sulla cella A1. Excel creerà una tabella ben formattata.
- Gli elementi verranno ora mappati. I tuoi dati sono ora pronti per l'esportazione.

Passaggio 5: esporta in XML
- Con i dati mappati selezionati, torna alla scheda Sviluppo.
- Fai clic su Esporta.
- Scegli una posizione e un nome per il tuo nuovo file XML e fai clic su OK.
Il file XML esportato corrisponderà al tuo schema, in questo modo:

Potrebbe piacerti anche: Converti facilmente XLS/XLSX in HTML — Mantieni intatta la formattazione di Excel
Metodo 2: Convertitori online gratuiti da Excel a XML
Se hai bisogno di una conversione rapida e una tantum senza la configurazione tecnica, gli strumenti online sono i tuoi migliori amici.
I migliori strumenti per convertire Excel in XML online (100% gratuiti, senza registrazione):
1. CloudxDocs (il più facile da usare)
- Vai al convertitore CloudxDocs DA EXCEL A XML.
- Carica il tuo file Excel (supporta XLS, XLSX, XLSB).
- Attendi il completamento della conversione e scarica il tuo file XML.
Questo convertitore produce per impostazione predefinita un file Foglio di calcolo XML che preserva la formattazione di Excel.

2. WizlyTools (supporta XML personalizzato)
- Vai al convertitore WizlyTools da Excel a XML.
- Carica un file Excel (.xlsx, .xls).
- Inserisci il nome dell'elemento radice e il nome dell'elemento riga.
- Seleziona una dimensione di rientro per il tuo output XML.
- Fai clic su "Converti in XML" e quindi copia o scarica l'XML risultante
Questo convertitore ti dà un maggiore controllo sulla struttura XML, come la definizione di un elemento radice specifico, un elemento riga e ti consente di visualizzare l'anteprima dell'XML prima di scaricarlo

Nota: evita di caricare dati sensibili (ad es. registri finanziari) su strumenti online. Utilizza metodi manuali per i file riservati.
Metodo 3: Automatizzare la conversione da Excel a XML in Python
Per sviluppatori e professionisti IT che lavorano in Python, Spire.XLS for Python fornisce una soluzione solida e basata su codice per convertire fogli di calcolo Excel in XML senza richiedere l'installazione di Microsoft Excel. Questo è ideale per l'automazione lato server e l'integrazione di applicazioni.
Passaggio 1: installazione
Innanzitutto, è necessario installare la libreria Spire.XLS for Python. È disponibile tramite PyPI.
pip install Spire.XLS
Passaggio 2: scrivi lo script Python
Questo script utilizza Spire.XLS per leggere i dati di Excel, quindi genera XML con i moduli integrati di Python xml.etree.ElementTree (per la struttura) e minidom (per una formattazione gradevole).
from spire.xls import *
import xml.etree.ElementTree as ET
from xml.dom import minidom
# Load the Excel file
workbook = Workbook()
workbook.LoadFromFile("Orders.xlsx")
# Get the first worksheet
worksheet = workbook.Worksheets[0]
# Get row and column counts (Spire.XLS uses 1-based indexing)
max_row = worksheet.LastRow
max_col = worksheet.LastColumn
# Check if data exists (headers in row 1, data in row 2+)
if max_row < 2:
raise ValueError("No data found! Ensure headers are in row 1 and data starts in row 2.")
# Create XML root element
root = ET.Element("Info")
# Loop through data rows (skip row 1: headers)
for row in range(2, max_row + 1):
# Create a row element (e.g., <Order>)
row_element = ET.SubElement(root, "Order")
# Loop through columns to get headers and values
for col in range(1, max_col + 1):
# Get header (XML tag)
header = worksheet.Range[1, col].Value
# Get cell value (data for the XML tag)
cell_value = worksheet.Range[row, col].Value
# Create sub-element and add value
ET.SubElement(row_element, header).text = str(cell_value)
# Pretty-print XML (add indentation for readability)
rough_string = ET.tostring(root, 'utf-8')
reparsed = minidom.parseString(rough_string)
pretty_xml = reparsed.toprettyxml(indent=" ")
# Save to XML file
with open("Orders.xml", 'w', encoding='utf-8') as f:
f.write(pretty_xml)
# Close the workbook
workbook.Dispose()
Spiegazione del codice:
- Carica file Excel: utilizza Spire.XLS per aprire un file Excel e accedere al suo primo foglio di lavoro.
- Definisci intervallo di dati: trova l'ultima riga e colonna con dati (indicizzazione basata su 1 in Spire.XLS) per conoscere i limiti dei dati.
- Crea struttura XML:
- Crea un elemento radice XML
<Info>. - Scorre ogni riga di dati (a partire dalla riga 2), creando un elemento
<Order>per ciascuna. - Per ogni colonna nella riga: utilizza l'intestazione dalla riga 1 come tag XML e il valore della cella come contenuto del tag.
- Crea un elemento radice XML
- Salva XML: formatta l'XML con rientro (per leggibilità) e lo salva in un file XML.
XML di output di esempio

Spire.XLS for Python fornisce anche un metodo diretto SaveAsXml() per convertire Excel in formato Open XML.
Considerazioni finali
La conversione da Excel a XML è un'abilità fondamentale che sblocca il vero potenziale dei tuoi dati, consentendo loro di fluire senza problemi in applicazioni web, file di configurazione e altri sistemi aziendali. Comprendendo i metodi disponibili, dalla potenza controllata delle Mappe XML di Excel alla rapidità degli strumenti online e alla forza industriale dello scripting Python, puoi scegliere lo strumento giusto per ogni lavoro.
Domande frequenti sulla conversione da Excel a XML
D1: Come posso convertire in batch più file Excel in XML contemporaneamente?
La conversione batch consente di risparmiare tempo per più di 10 file: utilizza questi metodi in base al tuo livello di abilità:
- Strumenti online: Zamzar supporta fino a 50 file per batch (carica tutti i file Excel, seleziona "XML" come output e ottieni uno zip di XML).
- Spire.XLS for Python: estendi lo script fornito per scorrere una cartella
import os
from spire.xls import *
import xml.etree.ElementTree as ET
from xml.dom import minidom
input_folder = "C:/Excel_Batch"
output_folder = "C:/XML_Batch"
os.makedirs(output_folder, exist_ok=True)
for filename in os.listdir(input_folder):
if filename.endswith((".xlsx", ".xls")):
workbook = Workbook()
workbook.LoadFromFile(os.path.join(input_folder, filename))
# Add conversion logic (same as single file) here
workbook.Dispose()
D2: Posso personalizzare la struttura XML (ad es. modificare i tag radice/riga)?
Sì, tutti i metodi supportano la personalizzazione:
- Manuale: modifica il file dello schema XML (.xsd) per modificare i tag radice (ad es.
<Catalogo>) o riga (ad es.<Prodotto>). - Online: strumenti come WizlyTools ti consentono di impostare i nomi degli elementi radice/riga nelle impostazioni.
- Python: modifica le righe ET.Element("NomeRadice") e ET.SubElement(root, "NomeRiga") dello script in base alle tue esigenze.
D3: I miei dati contengono formule. L'output XML conterrà la formula o il valore calcolato?
In quasi tutti i casi, l'esportazione XML conterrà il valore calcolato (il risultato della formula), non la formula stessa. XML è principalmente un formato per rappresentare i dati, non la logica o i calcoli dietro di essi. Il processo di conversione legge i valori visibili delle celle.
D4: Il mio file XML sembra disordinato quando lo apro. Come posso formattarlo correttamente?
L'XML generato da questi metodi è spesso in un formato compresso senza interruzioni di riga o rientri. Questo è ancora un XML valido. Per visualizzarlo in un formato leggibile:
- Apri il file in un browser web moderno (Chrome, Firefox, Edge), che lo formatterà e lo visualizzerà automaticamente in modo ordinato.
- Usa un editor di codice come VS Code, Notepad++ o Sublime Text, che dispongono di formattazione XML integrata o plug-in per re-indentare il codice.