|
Как определить количество строк в Excel-файле? |
☑ |
0
Лойфер
26.10.06
✎
12:18
|
Всю жизнь до этого момента я определял количество строк так:
Книга = Эксел.WorkBooks.Open(Путь);
Лист = Книга.WorkSheets(1);
СтрокНаЛисте = Лист.Cells.CurrentRegion.Rows.Count;
Но когда я попробовал определить колво строк у файла с неоднородными ячейками - приключился облом: выдает, что строк всего одна :(
Как быть?
|
|
1
Херрес
26.10.06
✎
12:19
|
Количество строк в эксель файле - 65534 :)
если серьёзно, есть там usedregion, кажется, но он тоже ненадёжен.
Единственный надёжный способ - бежать по ячейкам и эмпирически искать пустое место
|
|
2
Andrey_spb
26.10.06
✎
12:19
|
Проще всего так:
КолС=Лист.UsedRange.SpecialCells(11).Row;
но не всегда правильно...
|
|
3
Лойфер
26.10.06
✎
12:20
|
Пасиб баааальшое - буду пробовать :)
|
|
4
Ксель
26.10.06
✎
12:32
|
Excel=Новый COMОбъект("Excel.Application");
Kniga=Excel.Workbooks.Open(ПутьКФайлу);
Stranica = Kniga.Worksheets(1);
Massiv = Stranica.UsedRange.Value;
Kniga.Close(0);
ВсегоСтрок = Massiv.GetUpperBound(1)
|
|
5
Лойфер
26.10.06
✎
12:38
|
Ух ты! И такое попробую!
А вообще вариант с...
КолС=Лист.UsedRange.SpecialCells(11).Row;
...прокатил. Всем СПАСИБО!
|
|
6
vip1958
26.10.06
✎
13:42
|
КолС=Лист.UsedRange.SpecialCells(11).Row; Действительно не надежно! Пример: таблица из 8 строк, но если кто-нибудь из юзверей просто ткнется на любую ячейку скажем в 300 строке, то количество строк опять будет 65 тык с гаком. По своему опыту согласен с Херрес "Единственный надёжный способ - бежать по ячейкам и эмпирически искать пустое место", правда ющу не пустое место определунный символ или набор в первой ячейке последненей строки.
|
|