Как записать переход от 0 к 1 в столбце Excel?

Мне нужно записать количество переходов из состояния вниз (0) в состояние вверх (1) в одном столбце excel, и мне интересно, есть ли какая-то логика, подобная этой, доступной в Excel, или я могу запрограммировать такую логику в VBA. Я не очень хорошо, но разбираюсь в VBA, поэтому если какие-либо ссылки доступны, это было бы здорово.

29
задан Dave M
21.03.2023 0:12 Количество просмотров материала 3290
Распечатать страницу

4 ответа

вы можете получить количество с одним SUMPRODUCT формула. Если ваши данные в A1:A25, вы смогли использовать следующее:

=SUMPRODUCT((A1:A25=0)*(A2:A26=1)*(NOT(ISBLANK(A1:A25))))

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

9
отвечен Excellll 2023-03-22 08:00

мое решение предполагает, что чистые данные начинаются в ячейке A2 и идут вниз по столбцу A. Для моей Формулы он также не предполагает данных за строкой 1000 (отрегулируйте это вверх для большинства реальных данных.

формула является формулой массива, поэтому введите, используя ctrl + shift + enter

=SUM(IF(A2:A1000=0,IF(A3:A1001=1,1,0),0))

как работает формула.

для каждой ячейки от A2 до A1000 ищем ноль, если есть нулевой взгляд в следующей ячейке вниз. Если есть один в следующей ячейке вниз добавить один к счетчику. Примечание пустой ячейка будет считаться нулем.

конец диапазонов (A1000 и A1001) просто должен быть за концом данных.

enter image description here

5
отвечен gtwebb 2023-03-22 10:17

если вы только хотите отслеживать изменения от вниз к вверх (предполагая, что ваши данные в столбце А), то все, что вам нужно, это =N(A2>A1) затем перетащите формулу вниз.

это оценить до TRUE если значение увеличилось (пошло снизу вверх), то N(boolean) преобразуется в 1 или 0.

для отслеживания всех изменений состояния вы будете использовать =N(A2<>A1)

для подсчета всех изменений состояния вы бы суммировать столбец.

3
отвечен Jamie Bull 2023-03-22 12:34

вы можете использовать формулу для обнаружения переходов от 1 до 0 и от 0 до 1. Просто будьте осторожны вокруг пустых клеток!

рассмотрим следующий пример (см. скриншот ниже):

столбец B содержит двоичные данные.

C2 будет содержать следующую формулу:

=IF(AND(NOT(ISBLANK(B3)),B2=1,B3=0),1,0)

D2 будет содержать:

=IF(AND(NOT(ISBLANK(B3)),B2=0,B3=1),1,0)

вам просто нужно автозаполнить формулу для стольких строк, сколько вам нужно в Столбцах C и D.

  • количество 1 (Одни) в columnt C будет представлять количество переходов из 1 в 0.
  • количество 1 (единиц) в столбце D будет представлять количество переходов от 0 до 1.

и в конце вам нужно, чтобы сумма единиц (1) в columnds C и D

В примере ниже:

D18=SUM(C2:C16)
D19=SUM(D2:D16)

enter image description here

2
отвечен Art Gertner 2023-03-22 14:51

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх