
Need to convert a 32-bit Access database to 64-bit Microsoft Access? In many cases, the database file itself does not need a full rebuild. The compatibility work is usually in the application layer: VBA code, Windows API declarations, pointers and handles, ActiveX controls, references, drivers, DLLs, compiled files, and external integrations.
Our Microsoft Access team reviews the complete application and updates the components that prevent it from running reliably in 64-bit Microsoft 365 and newer Office environments. We can also plan for mixed 32-bit and 64-bit users when the application must support both.
Quick Answer: Can You Convert a 32-Bit Access Database to 64-Bit?
Yes. A simple ACCDB database may open in 64-bit Access without modification. Older or more customized applications often require targeted changes before they will compile and run correctly. The most common issues are legacy VBA Declare statements, 32-bit-only controls or drivers, broken references, DLL dependencies, and compiled ACCDE/MDE/ADE files.
The key point is that you are usually converting the Access application for 64-bit compatibility, not converting the underlying table data from one bitness to another.
What Actually Needs to Change When Moving Access from 32-Bit to 64-Bit?
The amount of work depends on how the database was built. A data-only ACCDB may need almost no changes, while a mature business application with years of VBA, controls, integrations, and compiled components can require a full compatibility audit.

VBA Windows API declarations
Legacy Declare statements must be reviewed for 64-bit compatibility.

Pointers and handles
Variables that hold memory addresses or Windows handles may need LongPtr instead of Long.

64-bit integer values
Some routines may require LongLong in 64-bit Office.

ActiveX and COM controls
32-bit-only controls may need a supported 64-bit replacement or a redesign.

References and libraries
Missing or incompatible references can prevent VBA from compiling.

ODBC, OLE DB, and other drivers
The driver bitness must match the Office/Access environment that uses it.

DLLs, add-ins, and external automation
Each dependency must be available and compatible with the target Office bitness.

ACCDE, MDE, and ADE files
Compiled files must be recreated from source for the target bitness.

Integrations
Printing, scanning, Outlook/Excel automation, APIs, SQL Server connections, and third-party software should be tested end to end.
How to Convert an Access Database from 32-Bit to 64-Bit
A reliable conversion is more than opening the file in 64-bit Access and checking whether the startup form appears. The complete application should be compiled, tested, and validated in the target environment.
- Preserve the original. Create a backup and work from a controlled copy of the database and any supporting files.
- Identify the target environment. Confirm the Access/Microsoft 365 version, 32-bit or 64-bit Office, Windows version, drivers, and external applications the database depends on.
- Open and compile the source application in 64-bit Access. Use VBA compilation to expose incompatible Declare statements, missing references, and other code-level problems.
- Update Windows API declarations. Add PtrSafe where required and change pointer/handle parameters or return values to LongPtr when they must hold 64-bit quantities.
- Review user-defined types and variables. Structures that contain pointers, handles, or true 64-bit integers may also need 64-bit-safe data types.
- Audit ActiveX, COM, DLL, and add-in dependencies. Replace unsupported 32-bit components or redesign the affected feature where no safe 64-bit equivalent exists.
- Verify database and integration drivers. Check ODBC/OLE DB connections, SQL Server drivers, linked tables, external data sources, and any vendor-specific middleware.
- Rebuild compiled Access files. Recreate ACCDE, MDE, or ADE deliverables from the source database using the required bitness.
- Test the full workflow. Test forms, reports, queries, VBA automation, exports/imports, printing, scanning, email, APIs, linked data, and any business-critical integrations.
- Deploy in stages. Move the updated application into production only after user acceptance testing and a rollback plan are in place.
VBA Example: Updating a Windows API Declaration
One of the most common 32-bit to 64-bit Access problems is legacy VBA that calls the Windows API. Microsoft requires Declare statements running in 64-bit Office to use PtrSafe, but simply adding PtrSafe is not enough if a parameter or return value stores a pointer or handle.
Legacy 32-bit declaration
Declare Function GetActiveWindow Lib “user32” () As Long
64-bit-compatible declaration
Declare PtrSafe Function GetActiveWindow Lib “user32” () As LongPtr
LongPtr is designed for pointer and handle values. In VBA7 it resolves appropriately for the Office bitness, which makes it useful when the same source code must run under both 32-bit and 64-bit Office.
Important: PtrSafe Does Not Automatically Make Code 64-Bit Safe
A common mistake is to add PtrSafe to every Declare statement and stop there. PtrSafe tells VBA that the declaration targets a 64-bit-capable environment; it does not resize parameters or return values automatically.
If a declaration passes or returns a pointer, handle, or other 64-bit quantity, the relevant data type must also be updated. Incorrectly leaving those values as Long can truncate a 64-bit value and lead to unexpected behavior or application failure.
Can One Access Database Support Both 32-Bit and 64-Bit Office?
Often, yes. Many Access applications can be written so the same source ACCDB works in both environments. LongPtr is especially useful because it maps to the appropriate pointer-sized type for the Office bitness.
Conditional compilation can also be used when different code is genuinely required. However, the entire dependency chain still matters: ActiveX controls, DLLs, ODBC drivers, COM components, and other integrations must also support the environments you plan to deploy.
ACCDB vs. ACCDE, MDE, and ADE: What Changes?
An ACCDB source database is different from a compiled Access file. A source ACCDB may be able to run under both 32-bit and 64-bit Access after its code and dependencies are made compatible.
Compiled Access files are bitness-sensitive. A 32-bit ACCDE, MDE, or ADE cannot simply be used as the finished 64-bit deliverable. The source database should be corrected and then recompiled using the target Access bitness.

Common Problems When Moving Access from 32-Bit to 64-Bit
Your database may need a 64-bit conversion if you encounter any of the following:
- “The code in this project must be updated for use on 64-bit systems” errors.
- Compile errors involving Declare statements, PtrSafe, LongPtr, pointers, or handles.
- Missing or broken VBA references.
- Forms that fail because an ActiveX control is unavailable.
- DLL, COM, OLE, or add-in compatibility errors.
- ACCDE, MDE, or ADE files that will not open.
- ODBC driver bitness conflicts or failed SQL Server connections.
- Crashes during reports, automation, printing, scanning, or API integrations.
- Different users running mixed 32-bit and 64-bit Office installations.
Our Access 32-Bit to 64-Bit Conversion Process
Our process is designed to reduce risk and verify that the complete application—not only the main database file—works in the target environment.
Does Moving to 64-Bit Access Make the Database Faster?
Not automatically. The main advantages of 64-bit Office are compatibility with 64-bit components and access to a larger memory address space. Database speed still depends on query design, indexing, network performance, linked-table design, data volume, VBA efficiency, and the backend.
For that reason, a 32-bit to 64-bit conversion should be presented primarily as a compatibility and modernization project—not as a guaranteed performance upgrade.
When a 64-Bit Conversion Becomes a Larger Modernization Project
Some applications reveal broader technical debt during the conversion. If critical controls are obsolete, the database depends on unsupported drivers, or the backend no longer meets security and scalability needs, it may make sense to combine the 64-bit upgrade with other modernization work.
- Replace unsupported ActiveX or COM components.
- Update old ODBC/OLE DB drivers and connection methods.
- Refactor unstable VBA and Windows API code.
- Move shared data to SQL Server or Azure while retaining Access as the front end.
- Improve deployment so each user runs a controlled local front end.
Frequently Asked Questions About Converting Access 32 Bit to 64 Bit
Ready to Convert Your Access Database from 32 Bit to 64 Bit?
If your Access application no longer works reliably after moving to 64-bit Microsoft 365—or you are planning the upgrade before users are affected—Access Experts can review the database, identify the incompatible components, and provide a conversion plan.
We can handle targeted VBA compatibility fixes, ActiveX and driver replacements, compiled-file updates, full 64-bit testing, and related Access modernization work. Call us at +1 773.809.5456 or email [email protected] to get started.