Можно ли использовать формулу в условном выражении SUMIF?

скажем, у меня есть следующий столбец: 100, 123, 400, 64
Я хочу использовать SUMIF, чтобы суммировать все числа, которые делятся на 100 без напоминания. То есть, я хочу, чтобы результат был 500, для приведенного выше примера. Мне нужно как-то использовать мод(?,100)=0 условное выражение.
Мой вопрос более общий, можно ли использовать функции в SUMIF (или COUNTIF и т. д.) условное выражение.

10
задан BoazF
06.05.2023 22:46 Количество просмотров материала 3613
Распечатать страницу

2 ответа

нет, это невозможно. Это то, что мы даем, чтобы позволить ему быть оптимизированным(не массив).

но вы можете использовать SUMPRODUCT:

на сумму:

=SUMPRODUCT((MOD(A1:A4,100)=0)* A1:A4)

на счет:

=SUMPRODUCT(--(MOD(A1:A4,100)=0))

(MOD(A1:A4,100)=0) вернет TRUE / FALSE при итерации по массиву. Используя математические операнды на нем, TRUE / FALSE становится 1/0 соответственно. таким образом, SUMPRODUCT делает математику и добавляет результирующий массив вместе.

enter image description here

1
отвечен Scott Craner 2023-05-08 06:34

при получении Скотт Крейнер ' ы ответ правильный и, вероятно, тот, который вы хотите использовать, я думал, что вы могли бы быть заинтересованы, чтобы знать, что SUMIF() can используется в данном конкретном случае.

С SUMIF() поддерживает регулярные выражения, вы можете использовать следующее:

=SUMIF(A1:A4,"^.*00$")

это работает, потому что цифры в A1:A4 неявно преобразуются в текст для соответствия регулярному выражению, которое ищет строки, заканчивающиеся на два нули (если включено сопоставление всей строки, ^ и $ можно опустить).

метод может быть обобщен для чисел, кратных степеням 10, или степеням 10 с определенным остатком, но ответ Скотта может быть использован для кратных любого числа и для многих других критериев.

Примечание: я тестировал это с LibreOffice Calc, так как у меня нет легкого доступа к недавнему выпуску Excel, но я нашел функции, чтобы быть довольно совместимы между ними. Регулярные выражения (и полное соответствие строк) включены по умолчанию в Calc, но их может потребоваться задать в Excel.

Update: Скотт теперь сообщает мне, что RE не поддерживаются в SUMIF() критерии, но я оставлю ответ в пользу пользователей LibreOffice.

0
отвечен AFH 2023-05-08 08:51

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

Ваш ответ

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

Имя
Вверх