Я помогаю советом по использованию Oledb для больших файлов Excel - PullRequest
0 голосов
/ 03 апреля 2019

Итак, я новичок в Oledb, и у меня есть проект, который требует от меня получения данных из файла Excel с помощью консольного приложения.Файл Excel содержит около 500 столбцов и 55 строк.Как я могу получить данные из столбцов, переданных 255?

1 Ответ

0 голосов
/ 04 апреля 2019

Чтобы прочитать столбцы 256 -> вам просто нужно изменить оператор Select.По умолчанию драйверы Microsoft.ACE.OLEDB.12.0 и Microsoft.Jet.OLEDB.4.0 будут считывать данные из столбца 1-255 (A-> IU), но вы можете попросить его прочитать остальные столбцы.указав их в операторе Select.

Чтобы прочитать следующие 255 столбцов и выбрать «Лист1» в качестве имени листа, вы должны указать ...

Select * From [Sheet1$IV:SP]

Это будет работать, даже если нет еще 255 столбцов.Он просто вернет следующий кусок столбцов, если есть 1 ... 255. Дополнительные столбцы.

Кстати, драйвер Microsoft.ACE.OLEDB.12.0 будет читать и .xls, и любыевариант .xlsx, .xlsm и т. д. без изменения расширенных свойств из «Excel 12.0».Нет необходимости, если ... то ... иначе строка подключения зависит от типа файла.

Драйвер OLEDB в большинстве случаев довольно хорош, но он действительно полагается на правильно сформированные листы.Смешанные типы данных не очень хорошо обрабатываются, и это делает странные вещи, если первые столбцы / строки пусты, но, кроме того, это нормально.Я использую это лот .

...