Я использую числа Apple, чтобы выполнить некоторые вычисления на экспорт данных CSV из Mailchimp.

Данные (слабо), как:

ID   Email,           SignupAt
01   me@example.com   2015-09-04
02   you@example.com  2015-09-05
03   him@example.com  2015-09-06
04   her@example.com  2015-10-04

У меня есть другая таблица, где я хочу посчитать количество записей в этой таблице по номеру. Что-то вроде:

                 September 2015 December 2015
New Subscribers:              3             1

Я пробовал следующую формулу (и различные ее варианты) в моей таблице, но продолжаю получать ответ 0

=COUNTIF(TableA:SignupAt, (MONTH(TableA:SignupAt)=MONTH(B1) & YEAR(TableA:SignupAt)=YEAR(B1)

(Где B2 - заголовок столбца для таблицы B, которая содержит даты, September 2015)

Какая правильная формула для подсчета этих записей?

3 ответа3

2

Существует простое решение для этого с использованием значений true и false.

=SUM((MONTH(TableA:SignupAt)=MONTH(B1))*(YEAR(TableA:SignupaAt)=YEAR(B1)))

Это работает, потому что только TRUE * TRUE = 1 и все другие комбинации возвращают 0. Таким образом, он считает клетки, для которых выполняются оба условия.

Также это формула массива, поэтому вы должны нажать Ctrl+Shift+Enter после ее заполнения.

1

Вы должны использовать AND в формуле, а не & , как показано ниже:

=COUNTIF(TableA!C1:C4,AND(MONTH(TableA!C1:C4)=MONTH(B2),YEAR(TableA!C1:C4)=YEAR(B2))    

Это формула массива, одновременно нажмите Ctrl + Shift + Enter .

Вы также можете использовать другую формулу:

=SUMPRODUCT((--YEAR(TableA!C1:C4)=YEAR(B2))*(--MONTH(TableA!C1:C4)=MONTH(B2)))

Опять же, вы должны нажать Ctrl + Shift + Enter

Где C1:C4 - столбец RegistrationAt, а B2 - заголовок столбца для таблицы B, которая содержит даты сентябрь 2015 года.

Убедитесь, что формат даты в обеих таблицах понятен Excel.

0

Вы можете приблизиться к тому, что вы хотите, с помощью простой сводной таблицы. Но он не будет обновляться автоматически.

Если вы хотите использовать формулу с вашим желаемым месяцем / годом, например, в B9, и с тем, чтобы это было 1-е число месяца, отформатированного для отображения, как вы показываете, то используйте:

=COUNTIFS(TableA[SignupAt],">="&B9,TableA[SignupAt],"<="&EOMONTH(B9,0))

Если эта дата в B9 не обязательно должна быть первой в этом месяце, но может быть случайной датой в этом месяце, тогда будет работать следующая формула:

=COUNTIFS(TableA[SignupAt],">"&B9-DAY(B9),TableA[SignupAt],"<="&EOMONTH(B9,0))

B9-DAY(B9) всегда будет возвращать последнюю дату предыдущего месяца.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .