i was having an issue where Mail would not properly sync with my hosted exchange email account (exchange 2007).
i tried deleting then readding the mailbox to Mail, each time getting different results as to wether or not old emails would download, if any new emails would download etc
clicking on syncronise all accounts, or get new mail would do nothing.
however, i seem to have fixed this by clicking on each of the mailboxes/subfolders relating to my exchange email address and clicking "mailbox" and then selecting "rebuild". now everything is syncing perfectly and all historical emails have downloaded. note i had to cdo this process separately for my inbox, each folder in my inbox, sent items and trash
hopefully this helps someone out!