Оглавление
Если у вас есть данные на нескольких листах, вам может понадобиться знание некоторых приемов для использования функции SUMIF В этой статье я познакомлю вас с тремя методами, с помощью которых вы сможете использовать SUMIF на нескольких листах в Excel.
Допустим, в нашей таблице данных есть квартальные продажи разных продавцов на разных листах. Теперь мы хотим рассчитать годовые продажи разных продавцов. Для этого мы должны просуммировать продажи каждого продавца за разные кварталы.
Скачать Практическое пособие
SUMIF по нескольким листам.xlsmТри способа использования Sumif на нескольких листах
Метод 1: Использование функции SUMIF для каждого листа
Одним из способов расчета является использование функция SUMIF для каждого листа. Предположим, мы хотим вычислить годовой объем продаж каждого продавца в листе с именем Резюме по продажам. Введите следующую формулу в ячейку C5,
=SUMIF('Квартал 1'!B5:B9,'Сводка продаж'!B5,'Квартал 1'!C5:C9)+SUMIF('Квартал 2'!B5:B9,'Сводка продаж'!B5,'Квартал 2'!C5:C9)+SUMIF('Квартал 3'!B5:B9,'Сводка продаж'!B5,'Квартал 3'!C5:C9)
Вот, 'Квартал 1'!B5:B9' = Диапазон в листе Квартал 1 где будет происходить соответствие критериям
'Сводка продаж'!B5′ = Критерии
'Квартал 1'!C5:C9' = Диапазон в листе Квартал 1 откуда будет браться значение для суммирования.
Аналогичным образом, SUMIF используется для всех листов.
После нажатия ENTER, вы получите сумму продаж Марка за все три квартала в ячейке C5.
Перетащить продажи C5 до конца вашего набора данных, и вы получите годовой объем продаж всех продавцов.
Подробнее: SUMIF для нескольких критериев на разных листах в Excel (3 метода)
Метод 2: Использование функций SUMPRODUCT SUMIF и INDIRECT
Не повторяя SUMIF функцию несколько раз, вы можете использовать функция SUMPRODUCT , the SUMIF функция, и функция ИНДИРЕКТ в целом, чтобы получить тот же результат. Сначала мы вставим имя листа ( Квартал 1, Квартал 2, Квартал 3) в листе, где мы будем производить расчет годовых продаж.
После этого введите в ячейку следующую формулу C5,
=SUMPRODUCT(SUMIF(INDIRECT("''&$E$5:$E$7&"'!$B$5:$B$9"),B5,INDIRECT("''&$E$5:$E$7&"'!$C$5:$C$9")))
Вот, $E$5:$E$7 ссылается на разные листы для значений квартальных продаж.
B$5:$B$9 = диапазон поиска для критериев
B5 это критерий ( Марк)
$C$5:$C$9 = диапазон для значения при совпадении критериев.
После нажатия ENTER, вы получите сумму продаж Марка за все три квартала в ячейке C5.
Перетащить продажи C5 до конца вашего набора данных, и вы получите годовой объем продаж всех продавцов.
Похожие чтения
- SUMIF с несколькими критериями (5 самых простых примеров)
- Функция SUMIF в Excel для нескольких критериев (3 метода + бонус)
- Как объединить Excel SUMIF & VLOOKUP на нескольких листах
Метод 3: Использование VBA для суммирования по нескольким листам
Если у вас много листов, два вышеуказанных метода могут быть очень трудоемкими и сложными. Чтобы ускорить вычисления, вы можете воспользоваться помощью функции Приложения Visual Basic (VBA) и создать пользовательскую формулу.
Первая пресса ALT+F11 чтобы открыть VBA Окно. Щелкните правой кнопкой мыши на имени листа и выберите Вставка> Модуль.
Появится окно с кодом.
Скопируйте и вставьте следующий код в это окно,
Function SUMIFOS(lookup_value As Range, ParamArray cellranges() As Variant) Dim i As Integer, rng1 As Variant, temp As Single, a As Boolean Dim rng2 As Variant, value As Variant, j As Single If (UBound(cellranges) + 1) Mod 2 0 Then Exit Function End If For i = LBound(cellranges) To UBound(cellranges) Step 2 If cellranges(i).Rows.Count cellranges(i + 1).Rows.Count Then End If If Ifcellranges(i).Columns.Count 1 Then Exit Function End If rng1 = cellranges(i).value rng2 = cellranges(i + 1).value For j = LBound(rng1) To UBound(rng1) For Each value In lookup_value If UCase(rng1(j, 1)) = UCase(value) Then a = True Next value If a = True Then temp = temp + rng2(j, 1) a = False Next j Next i SUMIFOS = temp EndФункция
После этого закройте окно VBA и введите в ячейку следующую формулу C5,
=SUMIFOS(B5,'Квартал 1'!B5:B9,'Квартал 1'!C5:C9,'Квартал 2'!B5:B9,'Квартал 2'!C5:C9,'Квартал 3'!B5:B9,'Квартал 3'!C5:C9)
Вот, SUMIFOS это пользовательская функция, B5 это значение поиска, Квартал 1′!C5:C9 это диапазон для значения в листе с именем Квартал 1 и Квартал 1′!B5:B9 это диапазон для критериев в листе с именем Квартал 1. В эту формулу можно вставить значение из любого количества листов.
После нажатия ENTER, вы получите сумму продаж Марка за все три квартала в ячейке C5.
Перетащить продажи C5 до конца вашего набора данных, и вы получите годовой объем продаж всех продавцов.
Читать далее: SUMIF Multiple Ranges [6 полезных способов]
Заключение
Первый метод не очень удобен для большого количества листов, так как он потребует много времени. Вы можете использовать метод 1, если у вас всего несколько листов. Но методы 2 и 3 будут эффективны для очень большого количества листов.
Если у вас возникли проблемы при использовании любого из методов применения SUMIF на нескольких листах, пожалуйста, оставьте комментарий.