У меня набор данных выглядит так:
FALSE
FALSE
FALSE
FALSE
1 <--
1
1
1
FALSE
FALSE
FALSE
FALSE
1 <--
1
1
1
FALSE
FALSE
FALSE
FALSE
У меня вопрос, как мне посчитать сумму первых 1
в столбце?
У меня набор данных выглядит так:
FALSE
FALSE
FALSE
FALSE
1 <--
1
1
1
FALSE
FALSE
FALSE
FALSE
1 <--
1
1
1
FALSE
FALSE
FALSE
FALSE
У меня вопрос, как мне посчитать сумму первых 1
в столбце?
Я не уверен, что это лучший способ справиться с этим вопросом, но он отлично работал в моем тесте.
Предполагая, что у вас есть только значения FALSE
и 1
в этом конкретном столбце, и что этот столбец - A
, а первое значение - в A2
. Поместите следующую формулу в B2
(или любую ячейку, которая вам нравится, но вам нужно будет изменить формулу).
=IF(A2<>A1, IF(A2=1, "1", "not 1"), "not 1")
Это будет сравнивать значение слева от формулы со значением над ним, если они совпадают, оно игнорируется. Если они не совпадают, то это должно быть либо первое значение FALSE
либо значение 1
в блоке.
Затем вложенный оператор IF
определяет, является ли это значение FALSE
или 1
. Если FALSE
он игнорируется и отмечен как not 1
, а если это 1
то он помечается как 1
Мы будем использовать это значение позже.
Затем вам нужно будет скопировать это по всей длине вашей электронной таблицы (помните, когда я сказал, что это может быть не лучшим?).
После того, как все значения в столбце теста выяснены, можно использовать простой COUNTIF
для подсчета количества совпадающих ячеек, содержащих 1
.
Использование:
=COUNTIF(RANGE, CONDITION)
Пример:
Если ваши данные в столбце A
:
=COUNTIF(A1:A41, 1)
Надеюсь, что это делает то, что вам нужно!
РЕДАКТИРОВАТЬ: Если вы хотите получить аккуратный справочный столбец, вы можете использовать следующее, чтобы выбрать только первую 1
из каждого блока:
=IF(A2<>A1, IF(A2=1, "1", ""), "")
Только для Excel> = 2007:
=COUNTIFS(A1:A1048575, "=FALSE", A2:A1048576, "=1")+N(A1=1)