Последняя строка с данными

Программирование на Visual Basic for Applications
slon2
Начинающий
Начинающий
 
Сообщения: 5
Зарегистрирован: 18.01.2005 (Вт) 10:47

Последняя строка с данными

Сообщение slon2 » 23.01.2005 (Вс) 14:38

Слышал о таком понятии, как последняя строка (столбец) с данными, но что это и как этим пользоватья я не знаю.
Если не трудно объясните.
Например возможно ли вместо
For x = 1 To 100
Написать
For x = 1 To последняя строка на которой имеются данные
и возможно ли выделить на странице только данные исключая пустые строки.
Спасибо.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.01.2005 (Вс) 16:47

Эксель?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 23.01.2005 (Вс) 16:48

У объекта Range существует метод SpecialCells, который возвращает другой Range в зависимости от аргумента, который ты ему укажешь. Соответственно, есть аргумент xlCellTypeLastCell, при котором возвращается последняя (самая правая нижняя) используемая ячейка. Так что можно использовать следующую конструкцию:



Код: Выделить всё
For i=1 to Range("A1").SpecialCells(xlCellTypeLastCell).Row
...
Next i


Тогда i будет пробегать по всем рядам от первого ряда до последнего используемого.

Пустые строки, естественно, убрать можно. Но по-моему проще в цикле проверять ячейки на пустоту (что-нибудь вроде Cells(i,1).Value="") и пропускать такие строки.

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 23.01.2005 (Вс) 16:50

Да, спасибо GSerg'у за напоминание - все, что я говорил, относится к Экселю :o


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 60

    TopList