I think that I may have discovered the cause, that is varchars which are too large. I had the problem with changing data when my fields were varchar(1022) and I converted them to varchar(512) and the data no longer changed. I am using ADO 2.5 in Excel, so perhaps later versions do not have this bug.