Neulich in unserem Forum gefragt: SVERWEIS mit mehreren Ergebnissen

In unserem Forum kam eine interessante Frage an: kann ich beim SVERWEIS auch feststellen, ob es weitete Treffer gibt und diese auch darstellen, evtl. als Liste?

Das bringt mich dazu, einmal ein paar Worte zum SVERWEIS zu schreiben.

Klare Antwort auf obige Frage: nein das kann der SVERWEIS nicht, der bringt immer den ersten Treffer und fertig. Oder das allseits beliebte #NV, wenn eben kein Treffer vorliegt.

Aber wir wären nicht PRT, wenn das schon genug wäre, daher hier einige  Lösungsvorschläge – ohne und mit Visual Basic (VBA)

Lösung mit Funktionen

Beim SVERWEIS sollte der letzte Parameter, der sog. Bereich_Verweis immer versorgt werden, mit FALSCH, wenn Sie nur genaue Treffer wünschen, mit WAHR, wenn – nur, falls kein exakter Treffer vorliegt – der größte Wert, der kleiner als das Suchkriterium ist, den Treffer bestimmen soll. Tippfaule – nein: effiziente (!) –  Menschen nutzen anstelle von WAHR auch die Ziffer 0, das spart Zeit, Platz und Tippfehler.

=SVERWEIS(Suchkriterium;Suchbereich;2;0)

Nun gut, wir wissen nun, ob wir einen Treffer haben oder nicht.

Übrigens: falls Sie ohne Treffer bei geforderter genauer Übereinstimmung die Fehlermeldung #NV unterdrücken wollen, nutzen Sie bitte nicht mehr die früher üblichen Monsterkonstruktionen mit

= WENN(ISTFEHLER(SVERWEIS(Suchkriterium;Suchbereich;2;0));0;SVERWEIS(Suchkriterium;Suchbereich;2;0))

sondern das wesentlich kürzere und performantere WENNFEHLER (neu seit EXCEL 2007 oder bei uns im VBA-Seminar bekannt seit 1995):

=WENNFEHLER(SVERWEIS(Suchkriterium;Suchbereich;2;0);0)

Anzeigen mehrerer Treffer

Nun wollen wir rausfinden, ob es weitere Treffer gibt. Mithilfe von ZÄHLENWENN oder dem neuen ZÄHLENWENNS ist das ganz leicht:

=WENN(ZÄHLENWENN(Suchspalte;Suchkriterium)>1;“Achtung, mehrere Lösungen möglich!“;“ „)

Garniert mit Bedingter Formatierung wird hier ein nettes Banner draus.

Hier ein Beispiel dazu: sverweis-loesung

Performance beim SVERWEIS

Beim massiven Einsatz in mehreren Spalten ist er die Performance Bremse schlechthin, da er immer wieder den selben Bereich durchsucht! Hier empfehle ich INDEX und VERGLEICH oder gleich Datenbank Techniken via MS-Query. PowerQuery & Co.

Lösung mit VBA

Im nächsten Beitrag „Pimp my SVERWEIS“ sehen Sie meine Lösung mit dem selbst programmierten myBetterSVERWEIS in VBA – Visual Basic für Applications…

 

 

 

Ein Gedanke zu „Neulich in unserem Forum gefragt: SVERWEIS mit mehreren Ergebnissen

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s