Sometime in the next couple of days I will put up a tutorial on how to use pywallet.
Your wallets could very well be stuck on transactions that never made it to the official chain among other things.
I will show you how to use pywallet to completely "clean" your wallet of all transactions, and force client to rescan/index everything.
For those who cannot wait:
https://github.com/jackjack-jj/pywalletREMEMBER TO BACKUP YOUR WALLET...TWICE

BEFORE USING THIS TOOL ON A WALLET FILE.
Use to to completely delete all the transactions (NOT THE KEYS) in the wallet. Then start your client with the --rescan option.
again ... USE THIS TOOL ONLY AFTER YOU HAVE MADE A BACKUP(COPY) OF YOUR WALLET FILE, IN FACT USE THE TOOL ON A COPY OF YOUR WALLET FILE AND SAVE THE ORIGINAL.
