Вниз
Скачать: CL | DM;

Проблема с чтением данных из Excel   Найти похожие ветки 

 
rel_   (2005-11-30 00:55) [0]

Я читаю данные из файла Excel самым примитивным образом. Типа:
lExcelApp := CreateOleObject("Excel.Application");

lExcelApp.Workbooks.Open(fileName);
lWorkSheet := lExcelApp.Workbooks[ExtractFileName(fileName)].WorkSheets[1];
lRange := lWorkSheet.UsedRange;

затем из lRange.Value беру данные.

Так вот проблема - для одних файлов это стабатывает, для других - нет.

Мастера, может это известная проблема - подскажите как уж действительно наверняка можно прочитать данные.


 
vvvaaa   (2005-11-30 10:31) [1]

>затем из lRange.Value беру данные.

Каким именно образом береш эти данные?


 
umbra ©   (2005-11-30 11:34) [2]


> для одних файлов это стабатывает, для других - нет

это может не сработать, если в книге нет листов с данными, а только диаграммы, нетданных на первом листе, или если у листов с данными Visible = xlVeryHidden или по десятку других причин. Так навскидку ничего сказать нельзя


 
rel_   (2005-11-30 14:05) [3]

Так данные правильно наверное беру.
В ряде случаев работает.
А в ряде случаев - просто получаю пустую lRange.Value : VarIsEmpty(lRange.Value).

Даже когда начинаю читать прочто из ячеек - там ничего нет.
Хотя открываю документ - там определённо содержатся данные.
Единственная особенность документа - некоторые ячейки замержены.

Просто каким образом мне *наверняка* можно прочитать документ?


 
Digitman ©   (2005-11-30 14:21) [4]

даже при полностью пустом раб.листе обращение к

activesheet.usedrange.cells.count

вернет 1

проверь это в окне отладки в Excel Visual Basic и убедись сам

а раз 1 увидел, то usedrange-объект при этом заведомо не Null


 
umbra ©   (2005-11-30 15:00) [5]

логика подсказывает, что надо от объединенных ячеек избавиться, перед тем, как UsedRange получать. Но если заранее неизвестно, какие ячейки объединенные, то потом непонятно, в каких ячейках просто ничего нет, а в каких ничего нет, потому что они были обединены



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
2-1133968311
kop
2005-12-07 18:11
2005.12.25
Что делаю не так?


3-1131359266
M@xim
2005-11-07 13:27
2005.12.25
Клиент - сервер


2-1134047013
GanibalLector
2005-12-08 16:03
2005.12.25
PostMessage


4-1130471410
karakurt
2005-10-28 07:50
2005.12.25
Информация о диске


14-1133331274
syte_ser78
2005-11-30 09:14
2005.12.25
опять по хостингу вопрос.




   Наверх