Inhaltsverzeichnis
In diesem Lernprogramm finden Sie eine Handvoll Beispiele für fortgeschrittene Formeln, die zeigen, wie Sie die Excel-Funktionen VLOOKUP und SUM oder SUMIF verwenden können, um Werte auf der Grundlage eines oder mehrerer Kriterien zu suchen und zu summieren.
Versuchen Sie, eine Zusammenfassungsdatei in Excel zu erstellen, die alle Instanzen eines bestimmten Wertes identifiziert und dann andere Werte summiert, die mit diesen Instanzen verbunden sind? Oder müssen Sie alle Werte in einem Array finden, die die von Ihnen angegebene Bedingung erfüllen, und dann die zugehörigen Werte aus einem anderen Arbeitsblatt summieren? Oder vielleicht stehen Sie vor einer konkreteren Herausforderung, wie z. B. der Durchsicht einer Tabelle mitRechnungen Ihres Unternehmens, die Identifizierung aller Rechnungen eines bestimmten Lieferanten und die anschließende Summierung aller Rechnungswerte?
Die Aufgaben können variieren, aber die Essenz ist dieselbe - Sie wollen Werte mit einem oder mehreren Kriterien in Excel nachschlagen und summieren. Welche Art von Werten? Alle numerischen Werte. Welche Art von Kriterien? Alle : ) Angefangen von einer Zahl oder einem Verweis auf eine Zelle, die den richtigen Wert enthält, bis hin zu logischen Operatoren und Ergebnissen, die von Excel-Formeln zurückgegeben werden.
Verfügt Microsoft Excel über Funktionen, die bei den oben genannten Aufgaben helfen können? Natürlich! Sie können eine Lösung finden, indem Sie die Excel-Funktionen VLOOKUP oder LOOKUP mit den Funktionen SUMME oder SUMMEWENN kombinieren. Die folgenden Formelbeispiele helfen Ihnen zu verstehen, wie diese Excel-Funktionen funktionieren und wie Sie sie auf reale Daten anwenden können.
Bitte beachten Sie, dass es sich hierbei um fortgeschrittene Beispiele handelt, die voraussetzen, dass Sie mit den allgemeinen Prinzipien und der Syntax der VLOOKUP-Funktion vertraut sind. Falls nicht, ist der erste Teil unseres VLOOKUP-Tutorials für Anfänger sicherlich Ihre Aufmerksamkeit wert - Excel VLOOKUP-Syntax und allgemeine Verwendungsmöglichkeiten.
Excel VLOOKUP und SUM - die Summe übereinstimmender Werte ermitteln
Wenn Sie in Excel mit numerischen Daten arbeiten, müssen Sie oft nicht nur die zugehörigen Werte aus einer anderen Tabelle extrahieren, sondern auch die Zahlen in mehreren Spalten oder Zeilen summieren. Dazu können Sie eine Kombination aus den Funktionen SUMME und VLOOKUP verwenden, wie unten gezeigt.
Quelle: Daten:
Angenommen, Sie haben eine Produktliste mit Verkaufszahlen für mehrere Monate, eine Spalte für jeden Monat. Die Quelldaten befinden sich auf dem Blatt Monatliche Verkäufe :
Nun möchten Sie eine Übersichtstabelle mit den Gesamtverkäufen für jedes Produkt erstellen.
Die Lösung besteht darin, im 3. Parameter ein Array zu verwenden ( col_index_num ) der Excel-Funktion VLOOKUP. Hier ist eine allgemeine Formel:
SUMME(VLOOKUP( Nachschlagewert , Suchbereich , {2,3,...,n}, FALSE))Wie Sie sehen, verwenden wir eine Array-Konstante im dritten Argument, um mehrere Lookups innerhalb derselben VLOOKUP-Formel durchzuführen, um die Summe der Werte in den Spalten 2, 3 und 4 zu erhalten.
Passen wir nun diese Kombination aus VLOOKUP- und SUM-Funktionen an unsere Daten an, um die Summe der Verkäufe in den Spalten B - M in der obigen Tabelle zu ermitteln:
=SUMME(VLOOKUP(B2, 'Monatsumsatz'! $A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))
Wichtig! Da Sie eine Array-Formel erstellen, müssen Sie nach der Eingabe die Tastenkombination Strg+Umschalt+Enter drücken, da Microsoft Excel die Formel in geschweifte Klammern einschließt:
{=SUMME(VLOOKUP(B2, 'Monatsumsatz'!$A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))}
Wenn Sie die Taste Eingabe Schlüssel wie üblich, wird nur der erste Wert im Array verarbeitet, was zu falschen Ergebnissen führt.
Tipp: Sie werden sich vielleicht wundern, warum die Formel im obigen Screenshot [@Produkt] als Nachschlagewert anzeigt. Das liegt daran, dass ich meine Daten in eine Tabelle konvertiert habe ( einfügen. tab> Tabelle ). Ich finde es sehr bequem, mit voll funktionsfähigen Excel-Tabellen und ihren strukturierten Verweisen zu arbeiten. Wenn Sie beispielsweise eine Formel in eine Zelle eingeben, kopiert Excel sie automatisch in die gesamte Spalte und spart Ihnen auf diese Weise ein paar wertvolle Sekunden :)
Wie Sie sehen, ist die Verwendung der Funktionen VLOOKUP und SUMME in Excel einfach. Allerdings ist dies nicht die ideale Lösung, insbesondere wenn Sie mit großen Tabellen arbeiten. Der Punkt ist, dass die Verwendung von Array-Formeln die Leistung der Arbeitsmappe beeinträchtigen kann, da jeder Wert im Array einen separaten Aufruf der Funktion VLOOKUP auslöst. Je mehr Werte Sie also im Array haben und je mehr Array-Formeln Sie inIhrer Arbeitsmappe, desto langsamer arbeitet Excel.
Sie können dieses Problem umgehen, indem Sie anstelle von SUMME und VLOOKUP eine Kombination aus den Funktionen INDEX und MATCH verwenden.
Dieses VLOOKUP- und SUMmen-Beispiel herunterladen
Wie man andere Berechnungen mit der Excel-Funktion VLOOKUP durchführt
Vorhin haben wir ein Beispiel dafür besprochen, wie Sie Werte aus mehreren Spalten der Lookup-Tabelle extrahieren und die Summe dieser Werte berechnen können. Auf die gleiche Weise können Sie andere mathematische Berechnungen mit den von der VLOOKUP-Funktion zurückgegebenen Ergebnissen durchführen. Hier sind einige Formelbeispiele:
Operation | Beispiel einer Formel | Beschreibung |
---|---|---|
Berechnen Sie den Durchschnitt | {=AVERAGE(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Die Formel sucht nach dem Wert der Zelle A2 in der "Lookup-Tabelle" und berechnet den Durchschnitt der Werte in den Spalten B, C und D in derselben Zeile. |
Maximalwert finden | {=MAX(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Die Formel sucht nach dem Wert der Zelle A2 in der "Lookup-Tabelle" und findet den maximalen Wert in den Spalten B, C und D in derselben Zeile. |
Minimalwert finden | {=MIN(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Die Formel sucht nach dem Wert der Zelle A2 in der "Lookup-Tabelle" und findet den Mindestwert in den Spalten B, C und D in derselben Zeile. |
Berechnen Sie % der Summe | {=0,3*SUMME(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Die Formel sucht nach dem Wert der Zelle A2 in der "Lookup-Tabelle", summiert die Werte in den Spalten B, C und D in derselben Zeile und berechnet dann 30 % der Summe. |
Hinweis: Da es sich bei den obigen Formeln um Array-Formeln handelt, müssen Sie Strg+Umschalt+Eingabe drücken, um sie korrekt in eine Zelle einzugeben.
Wenn wir die obigen Formeln zur Tabelle "Zusammenfassung der Verkäufe" aus dem vorherigen Beispiel hinzufügen, sieht das Ergebnis ähnlich aus wie hier:
Laden Sie dieses Beispiel für VLOOKUP-Berechnungen herunter
LOOKUP AND SUM - in einem Array nachschlagen und übereinstimmende Werte summieren
Wenn Ihr Suchparameter kein Einzelwert, sondern ein Array ist, kann die Funktion VLOOKUP nicht verwendet werden, da sie nicht in Datenarrays suchen kann. In diesem Fall können Sie die Funktion LOOKUP von Excel verwenden, die analog zu VLOOKUP ist, aber sowohl mit Arrays als auch mit Einzelwerten funktioniert.
Damit Sie besser verstehen, wovon ich spreche, betrachten wir das folgende Beispiel: Nehmen wir an, Sie haben eine Tabelle, in der Kundennamen, gekaufte Produkte und Mengen ( Haupttabelle Sie haben auch eine zweite Tabelle mit den Produktpreisen ( Nachschlagetabelle Ihre Aufgabe ist es, eine Formel zu erstellen, die die Summe aller Bestellungen eines bestimmten Kunden ermittelt.
Wie Sie sich erinnern, können Sie die Excel-Funktion VLOOKUP nicht verwenden, da Sie mehrere Instanzen des Nachschlagewerts (Datenfeld) haben. Stattdessen verwenden Sie eine Kombination aus SUMME und LOOKUP-Funktionen wie diese:
=SUMME(LOOKUP($C$2:$C$10,'Tabelle nachschlagen'!$A$2:$A$16,'Tabelle nachschlagen'!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))
Da es sich um eine Array-Formel handelt, müssen Sie die Tastenkombination Strg + Umschalt + Eingabe drücken, um sie abzuschließen.
Analysieren wir nun die Bestandteile der Formel, damit Sie verstehen, wie die einzelnen Funktionen funktionieren und die Formel für Ihre eigenen Daten anpassen können.
Wir lassen die Funktion SUMME für eine Weile beiseite, denn ihr Zweck ist offensichtlich, und konzentrieren uns auf die 3 Komponenten, die multipliziert werden:
LOOKUP($C$2:$C$10,'Nachschlagetabelle'!$A$2:$A$16,'Nachschlagetabelle'!$B$2:$B$16)
Diese LOOKUP-Funktion sucht nach den in Spalte C der Haupttabelle aufgeführten Waren und gibt den entsprechenden Preis aus Spalte B der Lookup-Tabelle zurück.
$D$2:$D$10
Diese Komponente gibt die Menge jedes von jedem Kunden gekauften Produkts zurück, die in Spalte D der Haupttabelle aufgeführt ist. Multipliziert mit dem Preis, der von der obigen Funktion LOOKUP zurückgegeben wird, erhalten Sie die Kosten für jedes gekaufte Produkt.
$B$2:$B$10=$G$1
Diese Formel vergleicht die Kundennamen in Spalte B mit dem Namen in Zelle G1. Wird eine Übereinstimmung gefunden, wird "1" zurückgegeben, andernfalls "0". Sie verwenden diese Formel einfach, um andere Kundennamen als den Namen in Zelle G1 "abzuschneiden", da wir alle wissen, dass jede mit Null multiplizierte Zahl Null ist.
Da es sich bei unserer Formel um eine Array-Formel handelt, durchläuft sie den oben beschriebenen Prozess für jeden Wert im Lookup-Array. Und schließlich summiert die Funktion SUMME die Produkte aller Multiplikationen. Gar nicht so schwierig, oder?
Hinweis: Damit die LOOKUP-Formel korrekt funktioniert, müssen Sie die Lookup-Spalte in Ihrer Lookup-Tabelle in aufsteigender Reihenfolge (von A bis Z) sortieren. Wenn die Sortierung für Ihre Daten nicht akzeptabel ist, sehen Sie sich die von Leo vorgeschlagene SUMME / TRANSPOSE-Formel an.
Dieses LOOKUP- und SUMmen-Beispiel herunterladen
VLOOKUP und SUMIF - nachschlagen & Summe der Werte mit Kriterien
Die SUMIF-Funktion von Excel ähnelt der soeben besprochenen SUMME insofern, als sie ebenfalls Werte summiert. Der Unterschied besteht darin, dass die SUMIF-Funktion nur die Werte summiert, die die von Ihnen angegebenen Kriterien erfüllen. Die einfachste SUMIF-Formel ist zum Beispiel =SUMIF(A2:A10,">10")
addiert die Werte in den Zellen A2 bis A10, die größer als 10 sind.
Das ist doch ganz einfach, oder? Betrachten wir nun ein etwas komplexeres Szenario. Nehmen wir an, Sie haben eine Tabelle, in der die Namen und ID-Nummern der Vertriebsmitarbeiter aufgelistet sind ( Lookup_table Sie haben eine weitere Tabelle, die dieselben IDs und zugehörigen Verkaufszahlen enthält ( Haupt_Tabelle Ihre Aufgabe ist es, die Summe der Verkäufe einer bestimmten Person anhand ihrer ID zu ermitteln. Dabei gibt es 2 komplizierende Faktoren:
- Die Mail-Tabelle enthält mehrere Einträge für dieselbe ID in zufälliger Reihenfolge.
- Sie können die Spalte "Namen der Vertriebsmitarbeiter" nicht in die Haupttabelle aufnehmen.
Und nun wollen wir eine Formel erstellen, die erstens alle Verkäufe einer bestimmten Person ermittelt und zweitens die gefundenen Werte summiert.
Bevor wir mit der Formel beginnen, möchte ich Sie an die Syntax der Funktion SUMIF erinnern:
SUMIF(Bereich, Kriterien, [sum_range])Bereich
- dieser Parameter ist selbsterklärend, er gibt einfach einen Bereich von Zellen an, die nach den angegebenen Kriterien ausgewertet werden sollen.Kriterien
- die Bedingung, die der Formel mitteilt, welche Werte summiert werden sollen. Sie kann in Form einer Zahl, eines Zellbezugs, eines Ausdrucks oder einer anderen Excel-Funktion angegeben werden.sum_range
- dieser Parameter ist optional, aber sehr wichtig für uns. Er definiert den Bereich, in dem die Werte der entsprechenden Zellen addiert werden sollen. Wenn er weggelassen wird, addiert Excel die Werte der Zellen, die im Bereichsargument (1. Parameter) angegeben sind.
Mit den obigen Informationen im Hinterkopf definieren wir nun die 3 Parameter für unsere SUMIF-Funktion. Wie Sie sich erinnern, wollen wir alle Verkäufe einer bestimmten Person summieren, deren Name in Zelle F2 in der Haupttabelle eingetragen ist (siehe Abbildung oben).
- Bereich - da wir nach der ID des Verkäufers suchen, wird die Bereich Parameter für unsere SUMIF-Funktion ist Spalte B in der Haupttabelle. Sie können also den Bereich B:B eingeben, oder wenn Sie Ihre Daten in eine Tabelle konvertieren, können Sie stattdessen den Namen der Spalte verwenden:
Main_table[ID]
- Kriterien - Da wir die Namen der Verkäufer in einer anderen Tabelle (Lookup-Tabelle) haben, müssen wir die VLOOKUP-Formel verwenden, um die ID einer bestimmten Person zu finden. Der Name der Person steht in Zelle F2 in der Haupttabelle, so dass wir ihn mit dieser Formel nachschlagen:
VLOOKUP($F$2,Lookup_table,2,FALSE)
Natürlich könnten Sie den Namen auch in das Suchkriterium Ihrer VLOOKUP-Funktion eingeben, aber die Verwendung eines absoluten Zellbezugs ist besser, weil dadurch eine universelle Formel entsteht, die für jede Namenseingabe in einer bestimmten Zelle funktioniert.
- Summenbereich - Das ist der einfachste Teil: Da unsere Verkaufszahlen in Spalte C mit dem Namen "Sales" stehen, geben wir einfach
Main_table[Sales]
.Jetzt müssen Sie nur noch die Teile der Formel zusammensetzen, und schon ist Ihre SUMIF + VLOOKUP-Formel fertig:
=SUMIF(Haupttabelle[ID], VLOOKUP($F$2, Lookup_table, 2, FALSE), Haupttabelle[Umsatz])
Dieses VLOOKUP- und SUMIF-Beispiel herunterladen
Formelfreier Weg zu vlookup in Excel
Abschließend möchte ich Ihnen ein Tool vorstellen, mit dem Sie Ihre Tabellen ohne Funktionen oder Formeln nachschlagen, abgleichen und zusammenführen können. Das Tool Tabellen zusammenführen, das in unserer Ultimate Suite für Excel enthalten ist, wurde als zeitsparende und benutzerfreundliche Alternative zu den Excel-Funktionen VLOOKUP und LOOKUP entwickelt und kann sowohl für Anfänger als auch für fortgeschrittene Benutzer sehr hilfreich sein.
Anstatt sich Formeln auszudenken, geben Sie einfach Ihre Haupt- und Nachschlagetabellen an, definieren eine oder mehrere gemeinsame Spalten und teilen dem Assistenten mit, welche Daten Sie abrufen möchten.
Wenn Sie der Meinung sind, dass dieses Add-in für Ihre Arbeit hilfreich sein könnte, können Sie gerne eine Testversion über den unten stehenden Link herunterladen.
Verfügbare Downloads
VLOOKUP mit SUM und SUMIF - Formelbeispiele (.xlsx-Datei)
Ultimate Suite - Testversion (.exe-Datei)