tech on the net

MS Access: Hide tables as system tables in Access 2007

See solution in other versions of Access:

Question: I've created an Access 2007 database and flagged all of the tables as hidden objects. The users have figured out how to display these hidden tables. Is there any way that I can keep my tables from being displayed in the database window?

Answer: If you've tried setting your tables as hidden objects and the users are still able to find them, you can always set your tables up as system tables. Inside of your Access database, there are several system tables that even you can't see. These tables are used internally by the Access database.

An Access system table is specially named in that the first 4 characters of the table name is always "Usys". If you name your table with the same naming convention, you should be able to hide your table with the Access system tables. You will still be able to use your table in forms, queries, reports, etc. The only difference is that it will not display, by default, in the database window.

For example, you could rename your Orders table to UsysOrders. The system will then think that the UsysOrders table is a system table used by Access and it will not display the table in the database window.

To rename your table, right-click on the table in the left window and select Rename from the popup menu.

Microsoft Access

Then prefix your table name with USys. In this example, we are renaming the Orders table to USysOrders. Now, the USysOrders table will no longer be visible in the Navigation Pane.

Microsoft Access

Learn how to view Access system tables.