"Excel cannot open the file because the file format or extension is not valid," or "we found a problem with some content" — a spreadsheet that won't open usually has a broken internal structure: a damaged zip package (an .xlsx is really a zip of XML parts), a corrupt worksheet, or an interrupted download. xls.repair re-reads the file, rebuilds that structure, and saves a clean, working .xlsx.
It handles modern .xlsx/.xlsm and legacy .xls (rewriting it as a fresh .xlsx). It can't invent data that was never in the file, but for the common cases — bad zip directory, dirty XML, a file that opens in one program but not another — it brings your workbook back. Free, online, no watermark.
What 'repairing' an Excel file actually does
An .xlsx file is a ZIP archive containing XML for each worksheet plus shared strings, styles and relationships. When the ZIP directory or one of those parts is damaged — the usual cause of "unreadable content" errors — Excel refuses the whole file even though most of your data is intact. The repair rebuilds the ZIP package, drops unrecoverable fragments, re-serialises the workbook, and writes a fresh, valid .xlsx. That fixes the most common corruption without touching your cell values.
When repair can and can't help
Repair works well for interrupted downloads, a broken ZIP central directory, malformed XML, and files that open in Google Sheets or LibreOffice but not Excel. It can't recover data that isn't in the file: a download that cut off halfway loses whatever never arrived, and a badly truncated file may be unrecoverable — the tool will tell you honestly rather than hand back garbage. It also can't remove a workbook password. If the workbook opens but a single sheet is the problem, exporting to CSV often rescues the data.
Rescue the data as CSV
When a workbook is too damaged to rebuild whole, pulling the raw values out is the next best thing. Excel to CSV extracts each worksheet to a plain CSV you can reopen and clean up, and CSV to Excel builds a fresh, clean workbook from it.