Hi Liz
Depends on the users of course, but are you comfortable with users deleting
fields from your tables, or changing their data type?
Two weeks ago was called in to fix a database where the "new" person at the
company was frustrated that she could not enter a number into an AutoNumber
field, so she went into table design and converted the column into a Text
field. The database then did not work correctly when she tried to add new
records in a form with a subform, so she added another column that was an
AutoNumber. Of course these numbers did not match the original numbers, so
can you imagine what happened with the related data? Fortunately she called
for help at this point, and the original autonumbers were still present as
text so we were able to rebuild this database quickly for them.
That was not one of my apps, but it does illustrate why you don't want users
modifying your tables or queries. Likewise, we have people run an MDE
version so the code cannot decompile and users cannot fiddle with the
forms/reports. If they want the MDB, we come to agreement about that, but
strongly suggest running the MDE to prevent problems.
This is not about blocking people from functionality they need. It's about
giving people something that works, and will continue to work. Oh, and also
being able to pin down responsibility for maintenance: if code in an MDE
fails and it's not a corrupted database, then it's my fault. If the user has
been fiddling, how do you know what's going on?