About the Excel to XML Converter
Plenty of import routines still speak XML: banking uploads, product feeds, older ERP endpoints. Getting there from a spreadsheet normally means a macro or a paid add-in. This converter reads the .xlsx package directly, takes the header row as the field names, and writes one element per data row.
Header text is sanitised into legal element names, because XML forbids names that start with a digit or contain spaces. Order Date becomes Order_Date, a column called 2024 falls back to column1 style naming, and reserved xml prefixes are rewritten. Values are escaped, so an ampersand in a customer name will not break the document.
Switch to attribute style when the receiving schema expects compact records such as <record id="7" city="Genoa"/>, and rename the root and row elements to match that schema. The row index is included as an attribute in that mode so the original order stays visible after a transform.
Validate the result with the XML Validator before sending it into a pipeline, or convert onward using XML to JSON. For a delimited export instead, use Excel to CSV.
How to use
- Upload the .xlsx workbook and pick the sheet index.
- Name the root and row elements to match your target schema.
- Choose child elements or attributes for the field values.
- Download workbook.xml or copy the document.
Common questions
- What happens to a column heading with spaces?
- Spaces and punctuation become underscores so the element name is valid, for example "Unit Price" turns into Unit_Price.
- Can I get attributes instead of nested tags?
- Yes, set "Fields as" to Attributes and each row is written as a single self closing element.
- Is a schema or DTD generated?
- No. The output is a plain XML document; pair it with your existing XSD if the receiving system requires validation.
- How are empty cells written?
- As an empty element such as
<city></city>, which keeps every record the same shape for a parser.