Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
поиск последней строки в нескольких столбцах с помощью формул
 
здравствуйте. моя тема,на первый взгляд , кажется уже давно решенная,но с ходу не смог найти информацию в интернете.
в интернете я находил несколько статей,в которых описаны способы работы с одним столбцом.мне же нужно искать в нескольких смежных.

не подскажите,какую формулу можно использовать ?
вопрос у меня "общий",поэтому файл не прилагаю
Изменено: Karataev - 7 Апр 2015 14:43:50
 
что есть "последняя строка"? номер наибольшей строки в смежных столбцах с последней заполненной ячейкой?
F1 творит чудеса
 
последняя строка,в которой есть данные. данные могут быть любые:текст,числа, ошибки,булево,дата.
 
Karataev, насколько я понимаю, необходимо отдельно найти строку последней заполненной ячейки в каждом столбце и выбрать из них самую большую, нет?
UPD у меня как-то так получилось:
Код
Function MaxRow(Rng As Range) As Long
Dim aMaxRow As Long: aMaxRow = 0
If Rng.Count = 0 Then Exit Function
For Cl = Rng.Column To (Rng.Columns.Count + Rng.Column - 1)
MsgBox (Cl)
aMaxRow = Application.WorksheetFunction.Max(aMaxRow, Cells(Rows.Count, Cl).End(xlUp).Row)
Next Cl
MaxRow = aMaxRow
End Function




Изменено: МВТ - 7 Апр 2015 12:51:04
 
может быть такой алгоритм(я сам не знаю,какую функцию использовать )
1) excel просматривает все стролбцы
2 )в каждом столбце excel ищет  последнюю строку
3)excel куда-то записывает эту информацию
4)затем excel определяет максимальное значение
 
Karataev, пардон, но формулу вставил как исправление к предыдущему своему посту
 
макросом и я смогу сделать.и в интернете можно найти,как найти последнюю строку макросом.
у меня вопрос именно по формулам
 
А если только числа? Можно суммой. А если не числа?
Цитата
вопрос у меня "общий",поэтому файл не прилагаю
Ответ общий: определяйте длину данных в каждом столбце
 
формула массива:
=НАИБОЛЬШИЙ(ЕСЛИ(диапазон<>"";строка(диапазон));1)
работает норм, если выделен смежный диапазон.

вариант (так же массивный)
=НАИБОЛЬШИЙ(ЕСЛИ(НЕ(ЕПУСТО(диапазон));строка(диапазон));1)
F1 творит чудеса
 
Karataev, тогда попробуйте так (формула массивная):
Код
=НАИБОЛЬШИЙ(ЕСЛИ(B:B <>"";СТРОКА(B:B);0);1)

 
Код
=НАИБОЛЬШИЙ(ЕСЛИОШИБКА(ЕСЛИ(A1:B70<>"";СТРОКА(A1:B70);0);СТРОКА(A1:B70));1)

Формула массива. С учетом того, что в ячейках могут содержаться ошибки.
Для двух смежных столбцов.
Показывает номер последней заполненной строки.
Изменено: Пытливый - 7 Апр 2015 13:27:53
Кому решение нужно - тот пример и рисует.
 
спасибо,буду использовать формулу Пытливого,т.к. у него учитывает ошибки.
Страницы: 1
Читают тему (гостей: 1)