У меня есть следующая электронная таблица Excel:

   A   B   C    D     E       F      G     H      I     J    K     L
1
2
3
4              600    150    80    600      0     0          4    
5              200    150    80     80      0     0          4
6
7

В диапазоне K4:K5 в настоящее время я использую формулу из это вопрос , чтобы определить последнюю непустую ячейку в диапазоне и получить номер столбца обратно:

K4 = LOOKUP(2,1/(D4:J4<>0),COLUMN(D4:J4)-MIN(COLUMN(D4:J4))+1)
K5 = LOOKUP(2,1/(D5:J5<>0),COLUMN(D5:J5)-MIN(COLUMN(D5:J5))+1)

Эта формула работает в простом примере выше. Однако, как только я использую эту формулу на более крупной электронной таблице, я получаю много проблем с производительностью, а цифры не всегда обновляются правильно.

Поэтому мне интересно, есть ли альтернативная формула, чтобы получить номер столбца последнего непустой ячейки, независимо от того, если значения являются уникальными или нет?

1
Michi 25 Сен 2019 в 16:29

1 ответ

Лучший ответ

Как уже описано в комментариях ниже вопроса, доступны следующие решения:

вариант а)
Если вы хотите получить номер столбца последней непустой ячейки:

=AGGREGATE(14,7,(COLUMN(D4:J4)-MIN(COLUMN(D4:J4))+1)/(D4:J4>0),1)

опция b)
Если вы хотите, чтобы пойти TET TOT значение в последней непустой ячейке:

=INDEX(D4:J4,AGGREGATE(14,7,(COLUMN(D4:J4)-MIN(COLUMN(D4:J4))+1)/(D4:J4>0),1)
=INDEX(A4:J4,AGGREGATE(14,7,COLUMN(D4:J4)/(D4:J4>0),1)
0
Michi 26 Сен 2019 в 09:23