Think about how you could use the language converter so that the language is changed as the form is opened, rather than a permanent change. If used with security, you could store a table of user names , along with their preferred language, and as each form is opened, run a procedure that changes the controls. You've already seen how quick this is, so there'll be virtually no slow down from the user's point of view.
Add a facility to allow message boxes to have language facilities. This is fairly easy to do, as you could just add records into the language table, using a unique name for each message box. Then instead of calling MsgBox with a direct string, you could replace the string with a call to a function that looked up the language string in the table.
Currently the language converter only works with forms. Try extending it so that it works for reports as well.
Try our secret tip (exposing classes in libraries) to export the Shape class out to the MiniADO.mdb library, and then modify the other classes that use Shape . Hint don't forget to delete (or rename) the Shape class from the Ice Cream database before using the one in the library. Remember that our scope rules say to search the current database before going out to a library, so if you don't delete the one in the current database, you will never use the one in the library.