Μετατρέποντας το αρχείο σε MDE ο χρήστης δεν έχει πρόσβαση στον κώδικα, όπως επίσης δεν μπορεί να τροποποιήσει και να δημιουργήσει φόρμες (forms) και εκθέσεις (reports).
Οι μακροεντολές (macros) μπορούν εύκολα να μετατραπούν σε κώδικα (η Access έχει ενσωματωμένο ένα τέτοιο εργαλείο -απλά με save as νομίζω-), ενώ για τα ερωτήματα (queries) μπορείς να τα αποφύγεις ζητώντας απ' ευθείας την εκτέλεση των εντολών SQL μέσα από VB (DoCmd.RunSQL) ώστε να μην έχει πρόσβαση ο χρήστης του MDE.
Εν μέρει, η παράκαμψη του κώδικα εκκίνησης με τη χρήση του Shift μπορεί να αποφευφχθεί. Δεν είναι παρά ένα flag (AllowBypassKey αν θυμάμαι καλά) που χρειάζεται να αλλάξει τιμή... Υπάρχουν ακόμα και έτοιμα utilities για αυτό το σκοπό. Ακριβώς γι' αυτό το λόγο όμως, όσο εύκολα κλειδώνει, άλλο τόσο ξεκλειδώνει...
Προσωπική πρόταση πάντως είναι να χρησιμοποιήσεις κάποια έτοιμη εφαρμογή, αν δεν έχεις ιδιαίτερο λόγο να φτιάξεις κάτι δικό σου σε Access ...