A family of Microsoft relational database management systems designed for ease of use.
Dear Faraday,
Good day, and thank you for the detailed description of your issue.
I understand that you have built a Microsoft Access database that works well locally, and you would now like multiple users in different locations to use it remotely. As a forum moderator, I genuinely wish I could directly review your database design, network setup, and client requirements to recommend the exact best deployment model for you. Unfortunately, my role here is limited to providing general guidance and possible approaches that you can evaluate based on your specific needs.
From my research, Microsoft Access can support multiple users, but simply placing a single .accdb file online (for example, in OneDrive or a SharePoint document library) and letting remote users open it directly is not recommended. As multiple users doing so can create duplicate copies of the database and lead to unexpected behavior. Here are a few approaches you can consider:
Split the database into front-end and back-end
First step for a multi-user Access database is to split the database into a front-end (which contains forms, queries, reports, macros, and VBA code) and a back-end (which contains the tables and data). Each user then gets their own local copy of the front-end, which connects to the shared back-end. Benefits include:
- Improved performance, since only the data is sent across the network.
- Greater availability for record edits.
- Enhanced security through NTFS file system permissions.
- Improved reliability, since any corruption is typically limited to a single user's front-end.
- Flexible development, allowing you to update the front-end without disrupting access to the data.
You can use Access's built-in Database Splitter Wizard for this (Database Tools > Access Database > Split Database).
Host the front-end on a remote environment
For users in different locations, a practical Access-friendly approach is to host the Access front-end on a Remote Desktop Server, Citrix, Azure Virtual Desktop, or a similar environment. In this setup:
- The Access database runs in one controlled server environment.
- Users connect remotely to that environment.
- Database file operations are not transferred over long-distance internet connections.
This is generally better than placing the back-end on a shared drive and letting remote users connect over VPN, since Access is file-based and can perform poorly or risk corruption over unstable or slow remote connections.
For a more scalable long-term solution, you can keep Access as the front-end but move the tables and data to a proper database server, such as:
- SQL Server
- SQL Server Express (free)
- Azure SQL Database
This approach gives you:
- Much better performance and scalability (Azure SQL Database supports terabyte-sized databases, about 500 times the 2 GB limit of Access).
- Better concurrent editing and record locking.
- Stronger account-based security.
- Automatic recovery in the event of system failure.
- Server-based query processing to reduce network traffic.
For references:
Split an Access database | Microsoft Support
Ways to share an Access desktop database | Microsoft Support
For a more detailed architectural recommendation tailored to your organization, I would also recommend that the Global Admin in your organization open a service request with Microsoft Support. A technical support engineer can review your specific network setup, client requirements, and licensing situation to help you decide on the most appropriate deployment path. If needed, they can also escalate the case to a specialized team for deeper analysis. For detailed instructions on how to get support, please refer to Get support - Microsoft 365 admin. If you don't know who your IT administrator is, please refer to this article: How do I find my Microsoft 365 admin? - Microsoft Support
For additional assistance, use this link to find the appropriate contact number from your region: Global Customer Service phone numbers - Microsoft Support
I hope this information is helpful and provides you with a clear path forward. Please know that even though I can't directly intervene, directing you to the correct, specialized support is the most effective help I can provide from my position. Thank you for your patience and understanding. Please let me know if you need anything else.
If the answer is helpful, please click "Accept Answer" and kindly upvote it.
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.