Excel VLOOKUP zum Suchen des letzten Wertes in einer Spalte (mit Alternativen)

  • Teile Das
Hugh West

VLOOKUP ist eine sehr beliebte Funktion in Excel, die sich auf die vertikale Suche bezieht. Wir können die eingebaute VLOOKUP Funktion oder wir können sogar unsere eigenen Formeln erstellen, die als vertikale Suche funktionieren, um Werte mit dynamischeren Kriterien zurückzugeben. In diesem Artikel werde ich zeigen, wie man den letzten Wert in einer Spalte mit VLOOKUP in Excel.

Übungsbuch herunterladen

Laden Sie die Excel-Arbeitsmappe herunter, die wir zur Vorbereitung dieses Artikels verwendet haben.

VLOOKUP Letzter Wert in Spalte.xlsx

Verwendung der Funktion VLOOKUP zum Suchen des letzten Wertes in einer Spalte

Machen wir uns zunächst mit unserer Arbeitsmappe vertraut. In diesem Datenblatt habe ich 3 Spalten und 10 Reihen um die Verkaufsbeträge einiger Verkäufer nach den entsprechenden Daten darzustellen.

In dieser Methode finden wir das letzte Vorkommen eines Wertes, indem wir die VLOOKUP-Funktion . VLOOKUP steht für Vertikale Suche Es ist eine Funktion, die Excel nach einem bestimmten Wert in einer Spalte suchen lässt. Hier haben wir 3 verschiedene Verkaufsbeträge von Rechnung. Jetzt finden wir den Betrag seiner letzten Verkäufe in Zelle G5

Schritte :

➦ Aktivieren Zelle G5, geben Sie die unten stehende Formel ein:

=VLOOKUP(F5,C5:D13,2)

➦ Drücken Sie die Eingabe und Sie erhalten das letzte Vorkommen seiner Verkäufe.

Aber VLOOKUP gibt bei unsortierten Daten im Näherungsmodus nicht die richtige Antwort (siehe Abbildung unten).

Und wenn wir die genaue Übereinstimmung für das vierte Argument wird die erste Übereinstimmung angezeigt, wie in der Abbildung unten zu sehen ist. vlookup verwendet eine binäre Suche, d.h. wenn ein Wert gefunden wird, der größer ist als der Lookup-Wert, wird der vorherige Wert angezeigt, wie in der Abbildung unten zu sehen ist.

Um diese Situation für unsortierte Daten zu überwinden und das letzte Vorkommen zu finden, müssen wir Nachschlagefunktionen oder andere kombinierte Formeln verwenden. Wir werden diese Methoden in den folgenden Abschnitten besprechen.

Alternativen zur VLOOKUP-Funktion zum Suchen des letzten Wertes in einer Spalte

Jetzt werden wir vier alternative Methoden anwenden, um den letzten Wert in einer Spalte zu finden.

Methode 1: LOOKUP-Funktion verwenden, um den letzten Wert in der Spalte zu finden

Hier finden wir den letzten Wert einer Spalte mit die LOOKUP-Funktion in Excel: Die LOOKUP dient dazu, eine einzelne Spalte oder Zeile zu durchsuchen, um einen bestimmten Wert an der gleichen Stelle in einer zweiten Spalte oder Zeile zu finden. Ich suche den letzten Umsatz hier in Zelle G4.

Schritte:

➦ Aktivieren Zelle G4.

➦ Geben Sie die unten stehende Formel ein:

=LOOKUP(2,1/(D:D""),D:D)

➦ Drücken Sie dann die Eingabe Taste und Sie erhalten den letzten Wert.

👉 Formel Aufschlüsselung:

D:D""

Hier wird geprüft, ob die Zellen in Säule D leer sind oder nicht. Es wird als-

{FALSCH;FALSCH;FALSCH;WAHR;WAHR;WAHR;WAHR;WAHR;WAHR;WAHR;FALSCH.....}

1/(D:D"")

Wir haben geteilt 1 Da FALSCH bedeutet, dass 0 und TRUE bedeutet 1 Das Ergebnis wird also wie folgt aussehen:

{#DIV/0!;#DIV/0!;#DIV/0!;1;1;1;1;1;1;1;1;#DIV/0!;#DIV/0!}

LOOKUP(2,1/(D:D""),D:D)

Ich habe den Nachschlagewert 2 eingestellt, weil die Nachschlagefunktion 2 durch die Spalte finden wird, wenn sie zu einem Fehler kommt, kehrt sie zum nächstgelegenen Wert 1 zurück und zeigt dieses Ergebnis an. Das wird als-

367

Methode 2: INDEX und MATCH Funktionen verwenden, um den letzten Wert in einer Spalte zu finden

Hier werden wir die Kombination der INDEX und MATCH Funktionen. Die Funktion INDEX gibt einen Wert oder den Verweis auf einen Wert innerhalb einer Tabelle oder eines Bereichs zurück. und die MATCH-Funktion wird verwendet, um nach einem bestimmten Element in einem Bereich zu suchen, und gibt dann die relative Position dieses Elements in dem Bereich zurück.

Schritte:

➦ Geben Sie die unten stehende Formel in Zelle G5

=INDEX(D5:D13,MATCH(F5,C5:C13,1))

➦ Treffer Eingabe Taste.

👉 Wie funktioniert die Formel?

ÜBEREINSTIMMUNG(F5,C5:C13,1)

Hier die MATCH-Funktion wird verwendet, um den Wert von Zelle F5 für in aufsteigender Reihenfolge sortierte Elemente aus dem Array C5:C13. Das dritte Argument '1' zeigt die ungefähre Übereinstimmung an. Jetzt gibt die Funktion als-

6

Es wird die Zeilennummer ab dem ersten Eintrag angezeigt.

INDEX(D5:D13,MATCH(F5,C5:C13,1))

Und die Funktion INDEX ergibt den entsprechenden Umsatz ( D5:D13) entsprechend der vorherigen Übereinstimmung aus dem Array ( C5:C13) die als-

367

Das ist eigentlich das letzte Vorkommen für Zelle F5

Methode 3: Kombination von INDEX, MAX, SUMPRODUCT und ROW-Funktionen, um den letzten Wert in einer Spalte zu finden

Jetzt werden wir die Aufgabe mit der Kombination aus INDEX, MAX, SUMPRODUCT und ROW Funktionen. Die ROW-Funktion findet die Zeilennummern. SUMPRODUCT ist eine Funktion, die einen Bereich von Zellen oder Arrays multipliziert und die Summe der Produkte zurückgibt. Die Funktion MAX findet die maximale Anzahl, und die INDEX Funktion gibt einen Wert oder den Verweis auf einen Wert innerhalb einer Tabelle oder eines Bereichs zurück.

Schritte:

➦ Bearbeitung aktivieren in Zelle F7

Kopieren Sie die unten stehende Formel und fügen Sie sie ein:

=INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4))

➦ Und drücken Sie die Eingabe Taste.

👉 Wie funktioniert die Formel?

ZEILE($B$5:$B$13)

Die Funktion ROW zeigt die Zeilennummer für das Array an, das als- zurückgegeben wird.

{5;6;7;8;9;10;11;12;13}

($E$7=$B$5:$B$13)

Hier Zelle E7 ist unser Nachschlagewert und diese Formel wird ihn mit dem Array abgleichen B5:B13 Dann wird es als...

{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE}

ZEILE($B$5:$B$13)*($E$7=$B$5:$B$13)

Es ist die Multiplikation der beiden vorangegangenen Formeln, die die entsprechenden Zeilennummern tatsächlich multiplizieren wird. FALSCH bedeutet 0 und WAHR bedeutet 1 Nach der Multiplikation ergibt sich also...

{0;0;0;0;9;0;0;0;13}

MAX(ZEILE($B$5:$B$13)*($E$7=$B$5:$B$13))

Die MAX Funktion findet den Maximalwert des vorherigen Ergebnisses, das dann als

13

SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)

Jetzt ist die SUMPRODUCT Funktion wird verwendet, um die Zeilennummer im Array zu finden . Da unsere Liste mit der 5. Reihe aufwärts, 4 wurde subtrahiert, so dass die Position des letzten Vorkommens von Rechnung ist 9 auf unserer Liste, so dass die Formel als-

9 .

INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4))

Der INDEX Funktion wird verwendet, um die Verkäufe für den letzten übereinstimmenden Namen zu finden. Und sie gibt als-

563

Das ist unser letztes Ereignis für Rechnung.

Methode 4: Excel VBA verwenden, um das letzte Auftreten eines Wertes in einer Spalte zu finden

Wenn Sie gerne in Excel programmieren, dann ist diese Methode für Sie geeignet. Wir können den vorigen Vorgang auch mit der VBA-Methode durchführen. Gehen wir die folgenden Schritte durch, wie wir es einfach machen können.

Dazu werde ich zunächst eine Dropdown-Leiste für die eindeutigen Namen erstellen und dann eine neue benutzerdefinierte Funktion " LastItemLookup " mit VBA die wir verwenden werden, um das letzte Vorkommen zu finden.

Schritt 1:

➦ Kopieren Sie zunächst die eindeutigen Namen aus dem Hauptblatt in ein neues Blatt.

Schritt 2:

➦ Gehen Sie dann zum Hauptblatt. Aktivieren Sie eine beliebige neue Zelle. Ich wählte E5.

➦ Klicken Daten> Datenwerkzeuge> Datenvalidierung.

A Dialogfeld erscheinen wird.

Schritt 3:

➦ Wählen Liste von der Erlauben Sie bar.

➦ Drücken Sie dann die öffnen Symbol aus dem Quelle bar.

Schritt 4:

➦ Gehen Sie danach zu Ihrem neuen Blatt und wählen Sie die eindeutigen Namen aus.

➦ Presse OK

Siehe eine Abwärtspfeil Zeichen wird auf der rechten Seite der Zelle angezeigt. Wenn Sie hier klicken, können Sie einen beliebigen Namen auswählen. Das spart uns Zeit, weil wir die Namen nicht jedes Mal neu eingeben müssen.

Jetzt erstellen wir eine neue Funktion namens LastItemLookup mit Excel VBA.

Schritt 5:

➦ R ight-click mit der Maus auf den Blattnamen.

➦ Wählen Code anzeigen von der Kontextmenü .

A VBA öffnet sich ein Fenster.

Schritt 6:

➦ Geben Sie die unten angegebenen Codes ein:

 Option Explicit Sub vlookup_last() End Sub Function LastItemLookup(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer) Dim x As Long For x = LookupRange.Columns(1).Cells.Count To 1 Step -1 If Lookupvalue = LookupRange.Cells(x, 1) Then LastItemLookup = LookupRange.Cells(x, ColumnNumber) Exit Function End If Next x End Function 

Schritt 7:

➦ Drücken Sie dann die Wiedergabetaste, um die Codes auszuführen. A Dialogfeld namens Makros erscheinen wird.

➦ Klicken ausführen. .

Unsere neue Funktion ist jetzt fertig.

Schritt 8:

➦ Kehren Sie nun zu Ihrem Arbeitsblatt zurück.

➦ Aktivieren Zelle F5

➦ Geben Sie die unten stehende Formel mit der neuen Funktion ein.

=LastItemLookup(E5,B5:C13,2)

➦ Presse Eingabe um das Ergebnis des letzten Vorkommens für Ron .

Wenn Sie nun den Namen eines Verkäufers auswählen, erhalten Sie den entsprechenden Wert für das letzte Vorkommen.

Schlussfolgerung

Ich hoffe, dass alle oben beschriebenen Methoden ausreichen, um den letzten Wert in einer Spalte zu ermitteln. Fragen können Sie gerne im Kommentarbereich stellen, und bitte geben Sie mir Feedback

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.