XLS to XLSX
Convert legacy .xls to modern .xlsx.
Click to upload or drag & drop
Select a legacy Excel file (.xls)
How to use the XLS to XLSX
- 1Select the legacy workbook
Point the file selector at your old .xls — dropping it on the panel works too.
- 2Convert
The binary workbook is decoded and re-saved into the modern zipped XML format.
- 3Get the modern file
Your .xlsx is delivered automatically, with no compatibility-mode banner attached.
Examples
| Input | Output |
|---|---|
65,536 rows x 256 columns | 1,048,576 x 16,384 |
BIFF records in an OLE container | ZIP of XML parts |
VBA macro project | Dropped — .xlsx stores no code |
Compatibility-mode banner | Gone |
Large binary .xls | Usually a smaller .xlsx |
HTML table renamed .xls | Rejected, not converted |
The 65,536-row ceiling is the real reason to do this
The legacy .xls format, used by Excel 97 through 2003, stops dead at 65,536 rows and 256 columns per sheet. The .xlsx that replaced it allows 1,048,576 rows and 16,384 columns — sixteen times the height and sixty-four times the width. Anyone who has watched a data export arrive mysteriously truncated at exactly 65,536 lines has met that ceiling in person. Converting the file gives it room to grow; it cannot, sadly, restore rows that were already lost when the file was first written.
What an .xls actually is under the hood
An .xls is a binary workbook: a stream of BIFF records held inside an OLE compound document, which is essentially a miniature filesystem packed into one file, designed in an era when disks were small and XML did not yet exist. An .xlsx is a ZIP archive containing XML parts. Three things follow from that swap. The new file is normally a good deal smaller, because compressed text compresses beautifully and the old binary container does not. It can be read by anything with a ZIP library, which is why nearly every modern importer, Python script and web upload form asks for .xlsx specifically. And Excel stops greeting it in compatibility mode with a warning that features may be lost when you save.
Not everything called .xls is one
A surprising share of the “Excel” downloads produced by ERP systems, bank portals and reporting dashboards are named .xls but contain something else entirely: an HTML table, tab-separated plain text, or the Excel 2003 XML Spreadsheet dialect. Excel opens them anyway after grumbling that the format does not match the extension, which is why so few people ever notice. This converter expects a real binary workbook, so an impostor fails outright rather than yielding a damaged result. If that happens, open the file in Excel or Calc and save it properly, or — when it turns out to be nothing more than delimited text — rename it .csv and use CSV to Excel.
Carried over, and left behind
- Comes across. Every sheet and its name, all cell values and formulas, number and date formats, fonts, fills, borders, merged regions, defined names, autofilters, print ranges and page setup.
- Comes across, but look at it. Charts and conditional formatting, both of which are rebuilt in the newer schema rather than transplanted.
- Does not come across. VBA projects and the even older XLM macro sheets, because the destination format has no container for code of any kind.
Once you have the .xlsx
The modern file is a far better starting point for everything else. A script, database or analytics tool that wants flat data is best served by Excel to CSV. A recipient who must not edit the figures should get Excel to PDF output, which also fixes the page breaks before they print it badly. Someone working in LibreOffice or OpenOffice can be sent an Excel to ODS copy. Converting to .xlsx first genuinely helps in each case, because tools written this decade read the modern format far more reliably than the binary one.
Why the file has to be uploaded
Decoding an OLE compound document and the BIFF record stream inside it takes a real implementation of a thirty-year-old Microsoft binary specification. Browsers ship no such thing, and no amount of JavaScript in a page will conjure one, so the work is done by the LibreOffice installation on our server. Your upload is encrypted in transit, unpacked into a temporary folder that exists only for the length of that one request, and removed along with the generated .xlsx as soon as the response has been delivered to you.
Frequently Asked Questions
Will this bring back rows that were cut off at 65,536?
Unfortunately not, and it is important to be clear about it. If the system that produced the .xls hit the old row ceiling, those rows were never written into the file and there is nothing in it to recover. Converting gives the workbook a much larger grid to grow into from now on, but the missing data has to be exported again from wherever it originally came from — ideally straight to .xlsx this time.
What becomes of the VBA in my old workbook?
It is left behind, by design rather than by accident. The plain .xlsx specification deliberately refuses to hold executable code, which is why Microsoft created the separate macro-enabled .xlsm alongside it. If your file is automated, open it in Excel and use Save As with the macro-enabled type instead of converting it here; that path keeps the code and still gets you off the legacy binary format.
The .xls is password-protected. Can it still be converted?
No. LibreOffice cannot decrypt a workbook it has not been given the password for, so the conversion halts and reports a failure instead of yielding a half-readable workbook. Open the file in Excel or Calc, remove the protection from the file itself — the sheet-level protection that merely stops editing is fine and is not the problem — then save an unprotected copy and convert that.
Is the converted workbook going to look different?
For the vast majority of files, no: the same sheets, the same numbers, the same fills and borders, the same column widths. The exceptions live at the edges of the old format. Chart types that were retired long ago are approximated with their nearest modern relative, and some very old drawing and control objects embedded into 1990s workbooks may be simplified. Scroll through each sheet once and you will know within a minute.
Does this cost anything, and how big a workbook is allowed?
It is free, there is no cap on how many files you run through it, and the output carries no branding whatsoever. One .xls may weigh as much as 100 MB per upload — a generous ceiling, given that the format's own row and column limits keep genuinely enormous .xls files rare.