Как найти предыдущую непустую ячейку в столбце в Excel? - PullRequest
0 голосов
/ 30 апреля 2020

Я был бы очень признателен за помощь в поиске формулы для Excel, которая будет искать предыдущую (не последнюю ) непустую ячейку в столбце, а затем добавить 1. Пустую клетки не разделены последовательно друг от друга.

ColA
1 
2

3

4
5
6


7
8

Я предпочитаю формулу, но я открыт для VBA. Любой совет будет принята с благодарностью. Спасибо!

Ответы [ 2 ]

0 голосов
/ 30 апреля 2020

Вы можете рассмотреть эту формулу, введенную в ячейку A3 и скопированную оттуда.

=LOOKUP(2,1/(ISNUMBER(A$1:A2)),A$1:A2)+1

Преимуществом этой формулы также является ее недостаток: она допускает сочетание чисел и текста над ней. , найдет последний номер и добавит 1 к нему. Однако, если числа нет, оно выдаст ошибку, которую легко отловить с помощью IFERROR (), но это делает формулу слишком громоздкой. Поэтому я рекомендую ввести его в строку 3 и ввести начальный номер в A2.

@ Рекомендация BigBen относительно функции MAX () - это то, что я ранее использовал, когда сталкивался с аналогичными требованиями, но LOOKUP () может быть в состоянии работать лучше при некоторых обстоятельствах.

0 голосов
/ 30 апреля 2020

Предполагая, что значения в столбце A могут быть отсортированы ИЛИ не отсортированы.

Previous

Столбец предыдущий + 1 = предыдущее непустое значение ячейки + 1

=IF(ROW(B3)=MIN(ROW($B$3:$B$14)),B3,OFFSET($B$2,MAX(IF(ISBLANK(B2:B$3)=TRUE,0,ROW(B2:B$3)))-ROW($B$2),0)+1)

Примечания:

Для первых строк (без предыдущей ячейки) установлено значение ячейки по умолчанию. Все «предыдущие + 1» значения рассчитываются даже для пустых ячеек (изменяемых).

Лист

...