#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 будет существовать перед данными