Well, if it's Windows 98, then I think here is the explanation: Microsoft Office programs (Word, Excell, Access) are known not to initialize the memory they allocate. The Windows 9x operating system doesn't perform the initialization either. So, sometimes, the following happens: the physical memory where the virus/worm was loaded is swapped out (or deallocated) and this memory block is allocated in the Access process. The memory is not cleared - so the original virus code is still there. Access writes the important fields to the memory (fills the structure) - but some unimportant parts ("gaps") remain uninitialized (i.e. they still contain pieces of the virus code). Then, the file is saved and this memory block is written to the .mdb file. Pieces of the virus code are still inside... and avast! finds them.
You don't have to be worried about it - the virus is certainly not active (or complete) there and cannot be activated. Of course, it may be annoying that avast! detects the file as infected.
I would suggest to "compact" the database (there should be such command in Access) - I hope it will clear the unused parts of the MDB file.