Hier habe ich eine Tabelle mit dem treffenden Namen Table4
.
Ich habe einen benannten Bereich basierend auf der ID-Spalte von definiert Table4
.
Hier habe ich ein paar identische Dropdown-Menüs neben Feldern, die ein verwenden VLOOKUP
:
Die Dropdownliste wird anhand list
des oben genannten benannten Bereichs (PatientIds) validiert. Und hier ist der Code für die Nachschlageformeln:
=VLOOKUP(C9,Table4[[#All],[ID]:[Full Name]],4)
Mit den obigen Daten sieht alles gut aus und funktioniert auch gut. Ich kann die Dropdowns ändern und der Wert daneben ändert sich. Hier ist ein Beispiel:
JEDOCH, wenn ich versuche, zu zu ändern Z1
, NA
was für den Benutzer mehr Sinn macht, bricht die Hölle los!
Hier sind die Ergebnisse mit einigen duplizierten Feldern:
Und wenn ich nichts anderes tue, als es NA
wieder zu ändern in Z1
:
Antwort1
=VLOOKUP(C9,Table4[[#All],[ID]:[Full Name]],4)
Vlookup akzeptiert vier Argumente
Vlookup(lookup_value, table_array, col_index_number, range_lookup)
Das letzte Argument kann weggelassen werden und wird standardmäßig auf 1 oder TRUE gesetzt. Sie haben das vierte Argument weggelassen, daher wird standardmäßig TRUE gesetzt. Das bedeutet, dass die Suche das nächstkleinere Element zurückgibt, wenn keine genaue Übereinstimmung gefunden wird.
Damit das richtig funktioniert, muss das table_array aufsteigend nach der ersten Spalte sortiert sein. Wenn das nicht der Fall ist, sind die Ergebnisse überall verstreut und ein korrektes Ergebnis ist eher Zufall als Absicht.
Weitere Informationen zu Vlookup und eine Erläuterung des vierten Parameters finden Sie unterVlookup – warum brauche ich TRUE oder FALSE?