I suppose .NET is out of the question.

You want the persistance of a static variable, but with local scope only. Could you imitate this by setting up your "class" in a single code module such that you can make module scope variables, and expose access to them only through a handful of public Get/Set routines?

This is not a programatic solution, but rather an organizational one. However, VB isn't a true OO language, so a few limitations must be expected.