Страницы: 1
RSS
Последняя заполненная ячейка в столбце отфильтрованного листа
 
В листе применяется автофильтр.  
Как мне получить данные о номере строки последней заполненной ячейки столбца А    
(Именно ячейки, в которой содержатся данные, а не форматирование; и именно получить абсолютный номер строки, а не её последовательный номер в отфильтрованном списке).
 
Cells(Rows.Count, 1).End(xlUp).Row
Я сам - дурнее всякого примера! ...
 
Я извиняюсь, но это не работает. Заполните первые десять ячеек первого столбца значениями от 1 до 10. Поставьте автофильтр на верхнюю ячейку. Задайте фильтрацию <5 - отберётся первые четыре строки (значения от 1 до 4). При предложенном Вами макросе будет выдано значение 4, а мне надо 10, т.е. абсолютное значение последней, пусть и скрытой автофильтром, строки на листе. Как это сделать? Уже неделю бьюсь и не могу ничего придумать (кроме как топорно снимать автофильтр на время работы макроса, а потом его заново устанавливать).
 
Вот как раз для этого в Правилах есть п.3. А без примера я ответил Вам так, как понял Ваш вопрос.
Я сам - дурнее всякого примера! ...
 
=ПОИСКПОЗ(9^9;A1:A10;1)  
Так?
excel 2010
 
Вроде бы так. А как это представить в макросе?
 
Так вы в макросе сначала найдите эту последнюю  
строку, как подсказал KukLP, а затем ставьте фильтр
 
Можно и с фильтром:  
   With ActiveSheet.AutoFilter.Range  
       Debug.Print .Rows.Count + .Row - 1  
   End With
Я сам - дурнее всякого примера! ...
 
Вариант:  
   With ActiveSheet.UsedRange  
       For i = .Rows.Count + .Row - 1 To 1 Step -1  
           If Cells(i, 1) <> "" Then Debug.Print i: Exit Sub  
       Next  
   End With
Я сам - дурнее всякого примера! ...
Страницы: 1
Наверх