Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать сколько строк в Excel заполнено?


Страницы:   1 2

WebSqlNeederr ©   (2006-12-03 15:26:00) 

Мне нужно в программе пройтись по строкам Екселя и считать с них инфу, а как узнать сколько всего в Екселе строк записано?


Anatoly Podgoretsky   (2006-12-04 20:42:00) [1]

> Palladin  (04.12.2006 18:36:17)  [17]

> Это не заполненная строка

Откуда узнал, сидел рядом?


Anatoly Podgoretsky   (2006-12-04 20:42:00) [2]

> Kolan  (04.12.2006 18:38:18)  [18]

А не слипнется перебирать в цикле 65536*256 ячеек?


umbra   (2006-12-04 18:43:00) [3]

2 Kolan ©   (04.12.06 18:38) [18]

кто ж  возражает... :)


Kolan   (2006-12-04 18:38:00) [4]

> чтобы использовать в цикле for

Я в цикле все перебирал бы...


Palladin   (2006-12-04 18:36:00) [5]


> Anatoly Podgoretsky ©   (04.12.06 15:05) [16]

Это не заполненная строка :)


Anatoly Podgoretsky   (2006-12-04 15:05:00) [6]

> umbra  (04.12.2006 14:34:15)  [15]

Про это и речь, кроме того нужно четкое определение, что такое пустая строка


umbra   (2006-12-04 14:34:00) [7]


> И суммировать Areas[i].Rows.Count.

хотя в общем случае это неправильно :). В общем случае надо считать руками.


umbra   (2006-12-04 14:13:00) [8]

2 Anatoly Podgoretsky ©   (04.12.06 13:50) [12]

ну, если все так строго :), то надо пользоваться коллекцией Areas. И суммировать Areas[i].Rows.Count. Но насколько я понял, автору надо просто узнать номер последней использованной строки, чтобы использовать в цикле for


Anatoly Podgoretsky   (2006-12-04 13:54:00) [9]

> Anatoly Podgoretsky  (04.12.2006 13:50:12)  [12]

Для ранее приведенного примера
1
2

3

Должно вернут 3, не 2 и не 4


Anatoly Podgoretsky   (2006-12-04 13:50:00) [10]

> umbra  (04.12.2006 13:37:11)  [11]

>  Пустые строки между ними считаются.

Что также противоречит условию.


umbra   (2006-12-04 13:37:00) [11]

myWorksheet.UsedRange.Rows.Countвернет количество строк, начиная с первой использованной (т.е. хотя бы в одной ячейке есть данные) и заканчивая последней использованной. Пустые строки между ними считаются.


Anatoly Podgoretsky   (2006-12-04 13:07:00) [12]

> Krants  (04.12.2006 12:47:09)  [9]

Ню, ню

1
2

3


Krants   (2006-12-04 12:47:00) [13]


> jack128 ©   (03.12.06 18:30) [7]
> что то типа такого:
> ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell)].Row


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

Можно использовать такой код

 Sheet.Range["А1"].End[-4121].Select;
 Result:=XLApp.ActiveCell.Row; \\количество вподряд заполненыхэлементов в колонке A, нач. с перв. строки


jack128   (2006-12-03 18:30:00) [14]

Квадратная скобка лишняя, конечно..


jack128   (2006-12-03 18:30:00) [15]

что то типа такого:
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell)].Row


EvS   (2006-12-03 17:33:00) [16]

CurrentRegion если мне склероз не изменяет и если заполненные строки идут подряд.


oxffff   (2006-12-03 17:22:00) [17]

пройтись по строкам Екселя и считать с них инфу.
Так можно узнать сколько строк заполнено.


Palladin   (2006-12-03 16:12:00) [18]

а что такое "заполненная строка"?


WebSqlNeederr   (2006-12-03 16:01:00) [19]

извини конечно за грубость, просто не спал сегодня ночью так что немного нервный :(


WebSqlNeederr   (2006-12-03 16:00:00) [20]

типа решил блеснуть умом? Или ума не хватает понять то что я спросил ? Ты мне сказал сколько всего строк в екселе, а мне нужно сколько заполнено строк ...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо