Betrachten wir eine verbesserte Version der Funktion VLOOKUP – VLOOKUP3, die uns die Möglichkeit gibt, Werte zu ersetzen, wenn zwei Bedingungen übereinstimmen. Diese Funktion kann in Fällen nützlich sein, in denen wir keine eindeutigen Werte in dem Feld haben, für das wir eine Kombination durchführen müssen.
Angenommen, wir müssen zwei Tabellen verbinden, haben aber keine eindeutigen Werte:
Wie Sie sehen, haben wir Kreditnehmer mit den gleichen Nachnamen und Kreditverträgen mit den gleichen Nummern. Mit einer normalen Funktion kombinieren VLOOKUP wird problematisch sein, da jeweils nur eine Bedingung erfüllt wird und nur der erste gefundene Wert vorliegt.
Lassen Sie uns unser übliches VLOOKUP zum Ersetzen von Werten gemäß zwei Bedingungen wiederholen.
Öffnen Sie das Menü Dienst – Makro – Editor Visual Basic , Setzen Sie das neue Modul ein (Speisekarte Insert - Module ) und kopieren Sie den Text hierher Funktionen:
Function VLOOKUP3(Table1 As Range, _ SearchValue1 As Variant, _ Table2 As Range, _ SearchValue2 As Variant,_ ResultColumn As Range) 'moonexcel.com.ua Dim i As Integer For i = 1 To Table1.Rows.Count If Table1.Cells(i, 1) = SearchValue1 Then If Table2.Cells(i, 1) = SearchValue2 Then VLOOKUP3 = ResultColumn.Cells(i, 1) Exit For End If End If Next i End Function
Schließen Sie den Editor Visual Basic und kehren Sie zu Excel zurück.
Jetzt in Funktionsassistenten in der Kategorie Benutzerdefinierte Sie können unsere Funktion VLOOKUP3 finden und verwenden. Die Syntax der Funktion ist wie folgt:
=VLOOKUP3( Bereich1 ; Gesuchter_Wert1 ; Bereich2 ; Gesuchter_Wert2 ; der Bereich, aus dem wir Werte ersetzen )
Das heißt, um den Kreditbetrag korrekt durch Nachname und Vertragsnummer in der Zelle zu ersetzen E15 Sie müssen Folgendes eingeben:
=VLOOKUP3($A$2:$A$11; A15; $B$2:$B$11; B15; $C$2:$C$11)
Vergessen Sie auch nicht, die Bereiche mit einem Dollarzeichen festzulegen ($) , damit wir beim Kopieren der Formel die Bereiche nicht verpassen (zur schnellen Korrektur können Sie auch die F4-Taste verwenden).