Here's a list of things to check:
Truncation of Memo fields
at:
http://allenbrowne.com/ser-63.html
I was surprised to see that you didn't suggest the trick of
something like Left([MemoField], N), where N is some large number
that is greater than the length of the longest memo field value (I
use 4096 when I have to do this, which is very seldom, thankfully).
Surprisingly, it's not so terribly slow as you might expect.