Предполагая, что ваши данные расположены горизонтально, как показано на рисунке ниже, следующие две формулы должны сделать это для вас.
Первая ячейка требует другой формулы, так как слева от нее нет ссылки. поэтому простая формула для проверки, является ли первая ячейка единицей, введена в B2.
=--(A1=1)
Часть в скобке будет либо истинной, либо ложной. Причудой Excel является то, что если вы отправите значение true или false с помощью математической операции, оно будет преобразовано в 1 для true и 0 для false. Вот почему вы видите двойной - впереди. мог бы также сделать * 1, / 1, + 0, -0 в конце.
В B2 поместите следующую формулу и, при необходимости, скопируйте право:
=(A2+1)*(B1=1)
В основном это добавляет 1 к серии, затем проверяет, является ли число в последовательности 1 или 0. В случае его единица, оно сохраняет значение, как ИСТИНА, отправленное через математический оператор *. Если значение равно false, последовательность возвращается к нулю путем умножения False на математический оператор *.
Альтернативный IF
Теперь вышеприведенное, хотя оно работает и может сохранить несколько символов, не обязательно является интуитивно понятным для большинства. Параметр перехода к будет использовать функцию IF. Приведенные выше формулы можно заменить следующими:
A3
=IF(A1=1,1,0)
B3 ->Copied right
=IF(B1=1,A3+1,0)
Самая длинная полоса
Чтобы получить самую длинную полосу, самое высокое значение в вашем ряду помощников - это то, что вы хотите. Вы можете получить это с помощью следующей формулы в пустой ячейке.
=MAX(2:2)
=MAX(A2,I2)
Если у вас нет других чисел в строке помощника, вы можете использовать первую формулу, которая просматривает всю строку. Если есть другие числа из-за вычислений слева или справа в качестве примера, тогда вы захотите ограничить свой диапазон данными, как во второй формуле.