Potrzebuję pobrać dane z xls, potrzebuję również, aby użytkownik mógł zmienić lokalizację pliku, który będzie. Tak więc OleDbConnection wydawał się dobrym początkiem, i to było do pierwszej scalonej komórki.Otwórz arkusz kalkulacyjny programu Excel 2003 za pomocą C#. Nie można znaleźć instalowalnego modułu ISAM. Wyjątek
To działa dla wszystkich, ale połączonego komórki:
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=F:\test.xls;Extended Properties=Excel 8.0;");
cmd.CommandText = "SELECT * FROM [Sheet$]";
cmd.Connection.Open();
Uważam, że powinno to umożliwić dostęp do połączonych komórek:
OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\test.xls;Extended Properties=Excel 8.0;HDR=Yes;IMEX=1;");
Ale potem dostać nie można znaleźć instalowalnego wyjątek ISAM na cmd.conn.open();
Śledziłem porady tutaj: http://support.microsoft.com/kb/209805
And tutaj: Error: "Could Not Find Installable ISAM"
bez powodzenia.
Jestem otwarty na inne sposoby pobierania danych z xls. Lub nawet gdyby istniało polecenie, mogłem uruchomić xls, aby usunąć zwierciadlane komórki, które mogą działać.
Kto pomyślał o tej okropnej składni? – configurator
Musiałem go nieco zmienić: OleDbConnection (@ "Dostawca = Microsoft.Jet.OLEDB.4.0; Źródło danych = F: \ test.xls; Właściwości rozszerzone =" Excel 8.0; HDR = NO; IMEX = 1 '"); – NitroxDM
Bardzo dziękuję za tę odpowiedź. –