SUMIF в няколко листа в Excel (3 метода)

  • Споделя Това
Hugh West

Ако имате данни в няколко листа, може да ви се наложи да знаете някои техники за използване на 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 се използва за всички листове.

След натискане на ВЪВЕЖДАНЕ, ще получите сбора на продажбите на Mark за трите тримесечия в клетката C5.

Изтегляне на продажбите C5 в края на набора от данни и ще получите годишните продажби на всички продавачи.

Прочетете още: SUMIF за множество критерии в различни листове в Excel (3 метода)

Метод 2: Използване на функциите SUMPRODUCT SUMIF и INDIRECT

Без да повтарям SUMIF функция многократно, можете да използвате функцията SUMPRODUCT . SUMIF функция и функцията INDIRECT за да получим същия резултат. Първо, ще вмъкнем името на листа ( тримесечие 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 = обхват за стойността, ако критериите съвпадат.

След натискане на ВЪВЕЖДАНЕ, ще получите сбора на продажбите на Mark за трите тримесечия в клетката C5.

Изтегляне на продажбите C5 в края на набора от данни и ще получите годишните продажби на всички продавачи.

Подобни четива

  • SUMIF с множество критерии (5 най-лесни примера)
  • Функция SUMIF на Excel за множество критерии (3 метода + бонус)
  • Как да комбинирате Excel SUMIF & VLOOKUP в няколко листа

Метод 3: Използване на VBA за сумиране в няколко листа

Ако разполагате с много листове, горните два метода могат да отнемат много време и да бъдат сложни. За да направите изчисленията по-бързи, можете да се възползвате от помощта на Приложения на Visual Basic (VBA) и създайте персонализирана формула.

Първа преса ALT+F11 за да отворите VBA щракнете с десния бутон върху името на листа и изберете Insert> Модул.

Ще се появи прозорец с код.

Копирайте и поставете следния код в този прозорец,

 Функция 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 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. В тази формула можете да вмъкнете стойността от толкова листа, колкото искате.

След натискане на ВЪВЕЖДАНЕ, ще получите сбора на продажбите на Mark за трите тримесечия в клетката C5.

Изтегляне на продажбите C5 в края на набора от данни и ще получите годишните продажби на всички продавачи.

Прочетете още: SUMIF Multiple Ranges [6 полезни начина]

Заключение

Използването на първия метод не е много удобно за много голямо количество листове, защото ще отнеме много време. Можете да използвате метод 1, ако имате само няколко листа. Но методи 2 и 3 ще бъдат ефикасни за много голямо количество листове.

Ако се сблъскате с някакъв проблем при използването на някой от методите за прилагане на SUMIF в няколко листа, моля, оставете коментар.

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.