logo
search
Others

How to Restrict Microsoft Access Records by Windows User

Maira MehtabMaira Mehtab Sep 22, 2026 868 views

Question details

The user needs to configure a shared, split Microsoft Access database so that individual users can only view and edit their own specific records through the front-end interface.

Product
Microsoft Access
Device & OS
not provided
Scenario
Managing user permissions and record visibility in a multi-user split database environment.
Observed behavior
Currently, all users can access the full dataset; the goal is to implement application-level filtering to isolate records based on each user's Windows login credentials.
Before you start

Ensure your Access database is properly split into a front-end and back-end, and verify that you have administrative access to modify table designs, queries, and VBA modules.

Solution 1Recommended

Store Login Name and Filter Forms via VBA

Retrieve the current user's Windows login using a VBA function and apply filters to forms and queries to restrict visibility.

By capturing the Windows username when a record is created, you can force the front-end forms to only display records matching that specific username. This requires combining VBA functions, query criteria, and interface restrictions.

1
Add a Tracking Field

Open your target table in Design View and create a new field named 'CreatedBy' (Short Text) to store the Windows username.

2
Create a VBA GetUser Function

Create a new VBA module and write a function (e.g., GetUser) that utilizes the Environ("USERNAME") function or Windows API to capture the active Windows login name.

3
Set the Default Value

On your data entry forms, set the Default Value property of the 'CreatedBy' field to =GetUser() so it automatically populates when a new record is created.

4
Filter the Record Source

Modify the Record Source query of your forms and reports. In the Criteria row under the 'CreatedBy' field, enter =GetUser() to ensure only matching records are loaded.

5
Lock Down the Interface

Hide the Navigation Pane, disable the Shift bypass key, and restrict access to the query designer so users cannot bypass the filtered forms to open raw tables directly.

Security Limitation: This method provides application-level filtering, which is great for usability but is not strong security. For highly sensitive data, use a database platform with true row-level security.
Free Microsoft Office alternative

Manage Your Data with WPS Office

While Microsoft Access requires complex VBA and interface locking for data management, WPS Office provides a lightweight, free alternative for everyday office tasks. Experience seamless compatibility with Word, Excel, and PowerPoint files without heavy subscription fees.

  1. 1. Download the Installer: Visit the official WPS Office website and download the free installation package for your operating system.
  2. 2. Install the Suite: Run the installer and follow the on-screen prompts to set up WPS Office on your computer.
  3. 3. Open Your Data Files: Launch WPS Spreadsheet to instantly open, edit, and analyze your tabular data and CSV exports.
Manage tabular data effortlessly using WPS Spreadsheet as an intuitive alternative to complex databases.Fully compatible with Microsoft Excel (.xlsx), Word (.docx), and CSV formats.Lightweight installation with a familiar, easy-to-navigate user interface.Cost-effective solution with powerful built-in tools for everyday productivity.
microsoft office alternative - wps office

Frequently Asked Questions

Is filtering forms in Access considered fully secure?

No. Filtering records via forms or queries provides application-level restriction, which improves usability and prevents accidental edits, but it is not strict security. Knowledgeable users could potentially bypass the interface to view raw tables.

How can I prevent users from bypassing the Access startup forms?

You need to disable the 'Shift key bypass' property in your Access database settings via VBA. This prevents users from holding the Shift key during startup to access the database window and underlying design tools.

What is a better alternative for strong row-level security?

For sensitive data requiring strict security, you should upsize your Access back-end to Microsoft SQL Server or another robust Relational Database Management System (RDBMS) that supports true row-level security (RLS) at the database engine level.