There's no denying it. IMO Access one true Achilles' heel is its distribution of solutions.
As an Office application - there's no denying or complaining that it centers on the concept of "documents". Each MDB can be thought of as a document as Word has and Excel equivalently has Workbooks.
(An actual "Document" is a more precise concept in the DAO object model - we're just talking conceptually here ;-)
Access itself is the EXE which runs these documents.
The awkwardness comes in that each Access solution we create is an application in itself. It fulfills a requirement - and can be
extremely different from the other solutions you create.
None the less - there is no single "EXE" solution. An MDB is simply a file. It requires Access to run it.
You'll no doubt have heard that what we
do have is the Access Runtime. A distributable version of Access which will run applications but does not offer any interface for creating or altering the design of those MDB applications. (This obviously all applies even more so to MDEs which aren't generally design editable anyway).
Access 2007 offers the Runtime for free. Previous versions required the developer to own the Developer Extentions.
This gives you the rights to create installation packages which contain both a Runtime install of Access
and the application you've created (MDB/MDE - or ACCBD/ACCDE).
In this you therefore have included the version of
Access in which you developed. Hence not only if they have no Access installation, but even if they have a different version, your application still has the means to run on their system.
Is the Runtime thought of as a nice neat little package solution-wise? Not by many no. But you needn't think of it as clumsy either. Any solution has pre-requisits.
The VB5/6 runtime files are required for such solutions. Plus any data access APIs must be present. For .NET solutions you must have the pretty substantial .NET framework installed.
The runtime is just another instance of this - but frowned likely upon because of the duality of Access
and your application MDB being required and thought of as separate. (IT Depts generally frowning on Access anyway - even though the Runtime doesn't offer that which they fear most - end user freedom to wreck havok with applications dotted everywhere).
So you can take that paper bag from your mouth.
Access does have distribution solutions (a free one if you're using 2007).
Are they as seemless as other development environments? Not necessarily. Though it can all be wrapped up in one (apparently seemless) installation package.
But you gain with Access in other areas that the power of others. You just can't beat it for Rapid Application Development. And its range of data sourcing and inherent binding is just fantastic.
Horses for courses - and the tool you know is usually the best one for the job.
Cheers.