Monday, March 19, 2007

Access97 Tab Control may cause your application to crash

I love Access97. It's probably the best version of Access that Microsoft ever released, bugs and all. It works on Windows 98, NT, Windows 2000, and WinXP; and it runs fast.
One of the things I like about it is the Tabbed Control facility for forms design. I use it a lot, allowing me to put lots of fields on a form, but not having to display all of them at the same time.
There is one small hiccup: if the form gets "too complex", then woe betide anyone who tries to recompile a form that was previously compiled. Access97 just doesn't like it, and crashes.
Fortunately, there is a solution: don't compile the form twice. If you edit a form with a tabbed control, quit from Access once you're done. Then do a "decompile" with the shift key held down, and then a repair and compact for good measure.
This process is made easy with my AccessOpener utility, and seems to be a reliable means of fixing the problem. When I create an MDE version of the application, I always do a decompile, followed by a repair and compact, and then open the MDB file with the shift key held down. Then it is safe to make the MDE, knowing that it is only the MDE process that will be doing the compile.

No comments: