Excel находит первый ноль после ненулевого значения в пределах диапазона

#excel-formula #google-sheets-formula

#excel-формула #google-sheets-формула

Вопрос:

У меня есть диапазон, содержащий данные, которые следуют распределению * обычно начинается с 0, затем увеличивается, затем уменьшается и, наконец, возвращается к нулю. Я хочу вернуть значение другого столбца в точке, в которой данные возвращаются обратно к нулю (в моем случае вы можете видеть, что ячейка B6 — это точка, в которой происходит это событие, и я хочу, чтобы моя ячейка C2 возвращала значение «E» из ячейки A6…

введите описание изображения здесь

В настоящее время лучшее, что я могу сделать, это следующее:

 =INDEX(A2:B8,FIND(0,
TEXTJOIN(,,B2:B8),
MATCH(AGGREGATE(4,4,B2:B8),B2:B8,0)) -1,1)
  

Проблема заключается в том, что до появления данных может быть любое количество нулей.
т. е. вот так. = Где я все равно ожидал бы выделенного совпадения.

введите описание изображения здесь

Ответ №1:

1] 1-й ноль после ненулевого значения в C2 ввод формулы :

 =INDEX(A:A,INDEX(MATCH(1,1/B:B),0) 1)
  

2] Номер нуля после ненулевого значения в D2 введите формулу :

 =MATCH(9^9,B:B)-INDEX(MATCH(1,1/B:B),0)
  

введите описание изображения здесь

Ответ №2:

Для Excel вы можете использовать INDEX / AGGREGATE :

 =INDEX(A:A,AGGREGATE(15,6,ROW(B2:B8)/(B2:B8=0),2))
  

введите описание изображения здесь

Редактировать:

Если вы хотите получить первое нулевое значение после последнего ненулевого значения, используйте формулу:

 =INDEX(A:A,AGGREGATE(14,6,ROW(B2:B8)/(B2:B8<>0),1) 1)
  

Комментарии:

1. Спасибо. это очень элегантно. однако одна проблема заключается в том, что я не знаю, сколько 0 будет существовать перед данными