Любой способ использовать результаты функции для условного выражения в Excel

308
Sam Dean

Например, у меня есть список дат от А2 до А31 (с 1 апреля по 30 апреля) и я хочу подсчитать количество дней недели.

В B2 до B31 я мог бы использовать, =WEEKDAY(A2,2)<6чтобы дать истину или ложь. Затем отдельно посчитайте истины.

Есть ли вообще все это сделать в 1 ячейке с чем-то похожим =COUNTIF(A2:A31,WEEKDAY(A2,2)<6)?

0
и другое: https://superuser.com/questions/866590/excel-how-to-count-cells-whose-date-values-represent-a-day-between-monday-and Scott Craner 6 лет назад 0

1 ответ на вопрос

1
Sam Dean

Извините, если это неуместно, но в ответах на «похожий вопрос» я нашел этот неприемлемый ответ, который решает другую проблему, но также и мою.

Я не думаю, что это очевидная связь между этим вопросом и тем, на что он отвечал, поэтому я все равно разместил вопрос, и вот ответ, который решил его для меня.

Ответ SeanC

Вы можете предоставить WEEKDAY()массив, который не задокументирован на веб-сайте Microsoft.

Так что у меня сработало следующее. =SUMPRODUCT(1*(WEEKDAY(A2:A31,2)<6))

Изменено --на 1*благодаря Bandersnatch

Побей меня на 14 секунд. :-) Мне нравится использовать 1 * вместо двойного отрицания: `= SUMPRODUCT (1 * (WEEKDAY (A1: A30,2) <6))`. Я просто думаю, что это выглядит чище. Bandersnatch 6 лет назад 0

Похожие вопросы