5

Для заданной строки в Sheet1 я использую функцию SUMIF чтобы увидеть, находится ли значение из первой ячейки этой строки в списке исторических значений в Sheet2.

Это в основном суммирует все значения на моем историческом листе и группирует их по имени ячейки А1 на Листе 2.

Мне нужно второе условие, чтобы я также мог группировать строки по месяцам, и SUMIF , по-видимому, не позволяет использовать второе условие или AND для объединения второго предложения.

4 ответа4

4

Предположения:

Даты в столбце B

Ряды 5:29

исторический список в диапазоне имя «Исторический»

Месяц для тестирования находится в диапазоне имя «rngMonth»

=SUMPRODUCT((NOT(ISNA(MATCH(A5:A29,Historical,FALSE))))*(MONTH(B5:B29)=rngMonth)*(C5:C29))
2

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

например, SUMIF(все ячейки, которые соответствуют большим критериям) - SUMIF(все ячейки, которые являются частью небольших критериев).

0

Используйте формулы массива следующим образом:

{=sum(If(sheet2!A1:A50=sheet1!A1,if(sheet2!B1:B50=Sheet1!B1,Sheet2!C1:C50)))}

По сути, вы вкладываете свои операторы IF оператор SUM , затем нажимаете Ctrl+Shift+Enter, чтобы сделать его формулой массива.

Введение в Array Forumulas (опубликованное Джоном Фурнье) также является хорошим источником по этому вопросу.

0

Альтернативный вариант: на листе с историческими данными добавьте столбец, объединяющий два столбца, которые вы хотите использовать в качестве комбинированных условий. Например, предположим, что один столбец условия имеет диапазон с именем "Месяц", а другой столбец условия - с именем диапазона "PersonName":

Новый столбец содержит следующую формулу:

=Month&" "&PersonName

Назовите этот столбец (например, "Критерии"), затем используйте это имя диапазона в SUMIF. Например:

=SUMIF(Criteria,"January Biff",ValsToBeSummed)

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