הערה: יש בעיות עם זה...
מנסיוני, התחברות לאקסל כמסד נתונים היא בעייתית. יש שם הרבה עניינים לא פתורים, כמו שמירת מספרים כטקסט, או טקסט כמספרים... ולאחר חיפושים ב MSDN מצאתי שזה מה יש (כלומר ההסברים עצמם מתארים את ההתנהגות הבעייתית הזו, וכרגיל, זה לא באג, זה פיצ'ר...). אישית, מתוך VB6, פתרתי את זה ע"י קריאת הנתונים מהאקסל לתוך מערך דו מימדי (מסוג Variant, שזה על הפנים, אני יודע). כנ"ל לגבי כתיבת נתונים: מגדירים Range ו"שופכים" אליו מערך דו מימדי מסוג Variant. אני מאמין שעקרונית, אותו פתרון יכול להיות שימושי גם בסביבת דוט נט. עוד לא ניסיתי, אבל זה נראה לי אפשרי.