We help IT Professionals succeed at work.

How can I hide macros and SQL scripts in Access 2007 without making it a ACCDE file type

Is there a way to hide macros and scripts in  access 2007
Comment
Watch Question

DatabaseMX (Joe Anderson - Microsoft Access MVP)Database Architect / Application Developer
GOLD EXPERT
Top Expert 2007

Commented:
Create an ACCDE  from your ACCDB ...

mx
With ACCDE you protect the VBA code, also not 100% proof, but certainly helps.

You can hide the Navigation pane, but then you need to Disable the Shift key as well.
That would help.

You can create a Custom Ribbon as well, to help to disable most of the Database menu functions.

Check below side out on security actions you can take in Access 2007:
http://msdn.microsoft.com/en-us/library/bb421308%28v=office.12%29.aspx

Hope this helps,
Daniel
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database Architect / Application Developer
GOLD EXPERT
Top Expert 2007

Commented:
"With ACCDE you protect the VBA code,"
Well, a bit more than that. You cannot open modules, forms, reports or macros in Design View.

mx
BRONZE EXPERT
Commented:
The best you can do, other than accde, is to password protect your code.  
In VBA mode, in the Project Explorer, right-click on the project (bold and top of list) and select Properties (I believe it's Project Properties, or something like that).  In the tabs, you'll see PROTECTION.  Fill in the form and "OK".
PS.  This isn't fool-proof as there are apps you can buy that (they claim) will break-into passwords.  But.. unless this is really 'top-secret  national security" stuff, it will probably work.

Scott C
BRONZE EXPERT
Top Expert 2016

Commented:
another way is to distribute your app as runtime.

see this link
http://msdn.microsoft.com/en-us/library/cc136539%28v=office.12%29.aspx
Jeffrey CoachmanMIS Liason
SILVER EXPERT
Most Valuable Expert 2012

Commented:
Is your concern here at stop a casual user form seeing/running the code/macro?
Or to prevent a company form seeing/stealing your code?
Or to thwart a determined hacker?
...etc
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database Architect / Application Developer
GOLD EXPERT
Top Expert 2007

Commented:
Delores_C .. summarizing:

Since User Level Security (ULS) is no longer supported as of A2007, the biggest bang for the buck is to:

1) create a ACCDE
2) Even add a database password.
3) Inhibit the Shift Key bypass as noted by danishani above.

However, note that IF ... a user does open the db, your tables and queries (SQL) are not protected.  You can make all of these objects Hidden (a property) ... but of course that can be easily overridden.

Creating a Runtime does very little, because anyone can still take the db onto another system and open it - or even on a system with the Runtime - if that system also has a full install of Office.

So, these are pretty much your options.

mx

Explore More ContentExplore courses, solutions, and other research materials related to this topic.