MDB to Excel
Turn an Access database into an Excel workbook, one sheet per table, right here on your device.
Conversion desk
On this device
Start with a file
Drop your file here or choose one from your device.
MDB · ACCDB · 5 files at a time, free
Its new format
FromMDB
ToExcel
Converted on this device. Nothing is uploaded.
Your file's short trip
MDB to XLSX
Your file is next.
- Open
- Read tables
- Write the Excel file
- Ready
What to expect
Many .mdb files have outlived the program that made them: a parts list from a retired stock system, a member register a volunteer kept for years, a sample log from an old lab PC. The people who need that data now tend to work in a spreadsheet, and this page gets it there without installing anything.
Drop an .mdb file from Access 97, 2000 or 2003 and you get one .xlsx workbook back. Every table becomes its own sheet, with the column names in the first row. You don't need a copy of Access, and the database never leaves this browser tab. A newer .accdb file works here too.
Numbers stay numbers, Yes/No fields become TRUE and FALSE, and dates become real Excel dates you can sort and filter. After each conversion, "What changed" under the file lists anything that didn't carry over exactly.
How to convert MDB to Excel
- Drop the .mdb file on the box at the top of this page, or use Choose file. You can add several at once.
- The database is read in this tab. A bar fills as its rows come in.
- When "Your file is ready" appears, choose Download. With more than one database, "Download all (.zip)" saves them together.
- Open "What changed" under the file to see what was approximated or left out, with counts.
Reading your workbook
Each sheet takes its table's name. Excel allows 31 characters in a sheet name and no [ ] : * ? / or \, so a longer name is shortened and those characters become an underscore. If two names would end up the same, the second gets a number, and a table called History gets an underscore added, because Excel keeps that name for itself.
Dates keep the clock time Access showed, with no time zone added, so they read the same wherever you open the file. Two kinds stay as text: dates before 1 March 1900, which Excel's calendar either doesn't reach or counts a day off, and times Access stored without a date. Access counts those from 30 December 1899, so they arrive as text such as 1899-12-30 09:30:00.
Currency arrives as a plain number: a price Access showed as $3.50 becomes 3.5. Format the column as currency in Excel and it looks as it did before.
What's preserved, what changes
| What | Result |
|---|---|
| Every table | Preserved One sheet per table: 38 tables in our 28 test databases. |
| Access 97 to 2003 databases (.mdb) | Preserved Read without Access: our 2 Jet 3 and 9 Jet 4 test databases; 22 of 22 conversions to Excel and CSV finished. |
| Rows | Preserved Exported in full: in 56 of 56 test conversions, the rows written matched the row count stored in each table, as read by the same open-source library we convert with (46 rows in all). |
| Text, numbers, currency, Yes/No and dates | Preserved Numbers stay numbers, Yes/No becomes TRUE/FALSE and dates from 1 March 1900 on become real date cells. |
| OLE objects (pictures, documents) | Approximated Shown as [binary]; their content isn't exported. |
| Decimals with more digits than a spreadsheet number holds | Approximated Kept as text, so no digit is lost. |
| Times without a date, and dates before 1 March 1900 | Approximated Arrive as text, since Excel can't hold them safely as dates. A time Access stored on its own sits on 30 December 1899, so 09:30 arrives as 1899-12-30 09:30:00. |
| Text over 32,767 characters | Approximated Cut to Excel's cell limit, with a count in the notes. CSV keeps the whole text. |
| Tables over 1,048,575 rows | Approximated Split across sheets named after the table, such as "Orders (1)" and "Orders (2)". CSV keeps one file. |
| Queries, relationships, forms, reports, macros and modules | Not converted Stay in Access: only table data is exported, and every conversion says so in its notes. |
| Field formats, input masks, validation rules, lookups, keys and indexes | Not converted Stay in Access. Values come out as they are stored, so currency has no symbol and rows keep their stored order. |
| Linked tables | Not converted Not exported: their data lives in another file. |
| System and temporary tables | Not converted Left out (2 temporary tables in our test databases). |
| Databases over 8,000,000 cells | Not converted Too large for an XLSX made in the browser. CSV converts them. |
Preserved: arrives as it is. Approximated: arrives in a simpler form, as the row describes. Not converted: stays behind.
Approximated rows still reach your workbook, in another shape: an OLE object becomes [binary], and a very long text is cut at Excel's limit. The counts come from running our converter over licensed test databases, and our tests fail if a number drifts from what the converter actually does.
Big databases
An Excel sheet holds 1,048,575 rows, so a longer table is split across sheets named like "Orders (1)" and "Orders (2)", each with the header row. Here, one workbook holds up to 8,000,000 cells (rows times columns, all tables together), because a bigger one can run a browser tab out of memory. For a database that size, MDB to CSV writes each table as it goes.
Files over 25 MB can take a while. We'll ask before starting one, and you can always continue.
Database passwords
The .mdb files with an Access 2000–2003 database password in our tests opened here without it; the MDB page says what we've checked. If you drop an encrypted .accdb, we'll ask for its password right in the file list. It's used once, in this tab, and we don't send or store it.
If something goes wrong
- "This file looks damaged, or it isn't the format its name suggests": the copy may have stopped short, or another kind of file was renamed to .mdb. Copy it again from where it lives and try once more.
- "This format isn't on our list yet": the small .ldb file next to a database is a lock file Access makes while the database is open. Pick the .mdb itself.
- "This database has more cells than one workbook can hold here": convert it with MDB to CSV instead.
- A table is missing: open "What changed". A linked table lives in another file, often a back-end database on a shared drive, so convert that file. A database with no tables of its own gives a workbook with one empty sheet.
- Rows in a different order: Access sorts its datasheet by the key, while the file keeps rows in the order they were stored. Sort the sheet in Excel.
- A saved query isn't in the workbook: only tables are exported. If you have Access, a make-table query saves a query's result as a table.
- "Something unexpected stopped this conversion": reload the page and try again. If the same file stops twice, it probably uses something our reader doesn't handle yet.
Try it with a sample file
Not ready to use your own database? Download sample-access97-types.mdb (116 KB), a small Access 97 test file from the open-source mdb-reader project, and drop it above. You'll get four sheets. Table1 has two rows with one column of each common type, so you can see how a date, a currency amount and a Yes/No value land in Excel. The other three sheets hold only their column names. Its source and license are in the sample notes.
Plans
Free and Pro
The free plan is the real product, not a trial. Pro is for people who convert in bulk, and it isn't open yet.
| Feature | Free | Pro |
|---|---|---|
| Single files | Free, no watermark, no wait | Same |
| Files at a time | Up to 5 | Up to 100 |
| ZIP and folder input | Pick the files instead | Yes |
| Large files | Works; may be slow on some devices | Built for them |
| Account | None needed | Optional |
| Where files go | Nowhere: converted on your device | Nowhere: converted on your device |
| Price | $0 | Week Pass $6 · Pro $7/month or $48/year · coming soon |
Privacy
Check it yourself
You don't have to take our word for it. Your browser can show you exactly what this page sends.
- Open your browser's developer tools (F12, or Option + Command + I on a Mac) and choose the Network tab.
- Convert a file on this page.
- Look through the requests. None of them carries your file: the page loads its code once, then the conversion runs in a Web Worker on your device.
- For a stronger test, turn off Wi-Fi after the page loads, then convert again. It still works.
The conversion worker runs under its own Content Security Policy, which blocks every network request:
default-src 'none'; script-src 'self'The page itself may only talk to this site and our cookieless analytics:
connect-src 'self' https://gateway.umami.is