Μάλλον θα πρέπει να παρακάμψεις αυτό το άρθρο και να δεις αυτά στα οποία κάνει link: Reading Excel Worksheet and Column Information και Reading and Writing Excel Spreadsheets using ADO.NET . Για να παινευτούμε, αυτά τα έχουμε καλύψει αρκετές φορές στο DotNetZone.
Στα γρήγορα, αν βάλεις το HDR=Yes στο connection string λες στον OLEDB Provider να θεωρήσει ότι η πρώτη γραμμή κάθε spreadsheet είναι τα ονόματα των στηλών και να τα χρησιμοποιήσει. Τα ονόματα των worksheets είναι αυτόματα τα ονόματα των πινάκων. Ο τύπος των στηλών ... μαντεύεται από τον τύπο των πρώτων ΧΧΧ σειρών (δεν θυμάμαι πόσο είναι το default). Αυτό σημαίνει ότι αν έχεις αριθμούς μέχρι τη γραμμή 123456 και μετά ένα string, το read μάλλον θα σκάσει καθώς θα προσπαθήσει να τη διαβάσει ως αριθμό.
Για πιο προχωρημένες καταστάσεις, κάθε named range που δημιουργείς στο Excel εμφανίζεται ως πίνακας στον OLE DB Provider. Έτσι μπορείς να φτιάξεις πολλούς "πίνακες" σε ένα worksheet. Αυτό είναι χρήσιμο αν θέλεις να χρησιμοποιήσεις ένα Excel ως template και να αλλάζεις μόνο συγκεκριμένα στοιχεία.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos