Kategorie: SVERWEIS

SVERWEIS statt verschalteter WENN-Funktion – wirklich WAHR

 

Häufig finde ich eine verschachtelte WENN-Funktion vor, wenn Werte in Listen abgeglichen werden sollen. Es geht nicht um exakte Treffer, sondern ein Wert soll auf die Zugehörigkeit in einem Zahlenbereich abgeprüft werden.

Im folgenden Beispiel unterstützt ein Unternehmen seine Mitarbeiter durch reduzierte Beiträge für ein Fitnesscenter. Statt 80 Euro pro Monat werden z.B. nur EUR 10 für Spitzenverdiener fällig und z.B. EUR 40 für Mitarbeiter, die mehr als 4.200 aber weniger als 4.800 Euro verdienen.

Jetzt kann man mit der WENN-Funktion natürlich jeden Bereich abprüfen.

E806a

=WENN([@Gehalt]<$G$5;$I$4;WENN([@Gehalt]<$G$6;$I$5;WENN([@Gehalt]<$G$7;$I$6;WENN([@Gehalt]<$G$8;$I$7;WENN([@Gehalt]<$G$9;$I$8;WENN([@Gehalt]<$G$10;$I$9;WENN([@Gehalt]<$G$11;$I$10;WENN([@Gehalt]<$G$12;$I$11;WENN([@Gehalt]<$G$13;$I$12;$I$13)))))))))

Alles klar?

Macht wirklich keinen Spaß, oder? Vor allem ist die Formel lang, schwer zu lesen, schwer zu überarbeiten und wirklich nur sehr schwer auf Richtigkeit hin zu überprüfen.

Wesentlich kürzer ist da der SVERWEIS Typ WAHR:

E806b.jpg

=SVERWEIS([@Gehalt];tabBeitrag;3;WAHR)

Der SVERWEIS Typ WAHR prüft, ob ein Wert in der Suchspalte der Matrix eingeordnet werden kann. Immer zu lesen als z.B. „von 0 bis unter 600“, „von 600 bis unter 1.200“ bzw. ganz unten „5.400 und größer“. Dafür müssen die Klassenuntergrenzen zwingend aufsteigend sortiert sein. Und statt Zahlen könnte man auch Texte in Buchstabenbereichen einsortieren lassen.

Bei meinen Geschwindigkeitstests war die verschachtelte WENN-Funktion nur ein wenig langsamer. Alternativ könnten auch die Funktionen VERWEIS bzw. INDEX und VERGLEICH genutzt werden.

Hier die Datei für eigene Übungszwecke:

E806 SVERWEIS Typ WAHR für Bereichssuche

Die Datei befindet sich auch auf dem USB-Stick „Excel700“ im Verzeichnis Excel\E806.

Hier geht es zum Video:

Videolink: https://youtu.be/VJlWdERSam4

Viel Spaß beim Nachbasteln und einen schönen Feiertag
Andreas

Einfacher SVERWEIS – Teil 1

Die Excel-Funktion SVERWEIS (senkrechter Verweis) gehört mit zu den meist genutzten Funktionen in Excel und wird auch in vielen kaufmännischen Lehrgängen behandelt.

Syntax:

=SVERWEIS(Suchkriterium; Matrix; Spaltenindex; Bereich_Verweis)

Beim einfachen SVERWEIS wird geprüft, ob ein Wert (das Suchkriterium) in genau der gesuchten Schreibweise in einer Datenliste (die Matrix) vorkommt. Gesucht wird dabei in Spalte 1 dieser Matrix (dem Suchvektor). Gibt es eine exakte Übereinstimmung (Die exakte Suche muss mit FALSCH definiert werden), kann der Wert einer bestimmten Spalte der Matrix (der Spaltenindex) ausgegeben werden. Alternativ kommt die Meldung #NV.

E797.jpg

Formel in Zelle M9: Das Suchkriterium in Zelle M5 wird in der ersten Spalte (blau) der Matrix B5:J236 gesucht. Da genau das Suchkriterium gefunden werden soll, muss Bereich_Verweis mit FALSCH hinterlegt werden. Das Alter steht dann hier in Spalte 4 der Matrix.

Dieser einfache SVERWEIS hat noch ein paar Schwachstellen:

  • Was passiert, wenn die Spaltensortierung verändert wird?
  • Was passiert, wenn neue Daten unter die Liste kopiert werden?
  • Was passiert, wenn das Suchkriterium nicht gefunden werden kann?
  • Was passiert, wenn das Suchkriterium mehrfach im Suchvektor vorkommt?
  • Was muss man machen, wenn der Suchvektor nicht ganz links in der Matrix steht?
  • Wie muss die Formel umgestellt werden, wenn das Suchkriterium aus zwei oder mehr Zellinhalten erstellt wird?
  • Wie muss die Formel modifiziert werden, wenn es nicht einen, sondern zwei oder mehr Suchvektoren gibt?
  • Was könnte die Fehlerursache dafür sein, wenn z.B. nach der Zahl 10000 gesucht wird, diese zwar im Suchvektor steht aber doch nicht gefunden wird?
  • Was muss man machen, wenn mehrere Treffer möglich sind und diese auch aufgezeigt werden sollen?

Alle diese Punkte werden in den kommenden SVERWEIS-/INDEX-/AGGREGAT-Videos demonstriert.

Hier die Datei zum Download:

E797 SVERWEIS einfach

Hier geht es zum Video:

Videolink: https://youtu.be/qkES78Q6XIw

Viel Spaß beim Nachbasteln
Andreas

 

SVERWEIS und INDIREKT – Dynamischer Zugriff

Ich möchte einen Kunden per Dropdown auswählen und dann passend zum Kunden einen Wert aus einer separaten Kundentabelle auslesen. Die Tabellen heißen tab_Bundesländer und pro Kunde dann entsprechend tab_NRW, tab_BRA, tab_BAY und tab_HES. Der Name des Tabellenblatts ist hier unwichtig.

Per Dropdown wird dann ein Kunde ausgewählt. In der Datenüberprüfung wird auf die Bundesländer verwiesen. Ein neuer Eintrag in der Kundenliste wird dann automatisch auch im Dropdown aufgeführt.

Anschließend kann lediglich ein Projekt zum Kunden in Spalte C ausgewählt werden.

Per SVERWEIS muss ich nun dynamisch auf eine der beliebig vielen Tabellen zugreifen. Ich setze den Tabellennamen immer aus dem Teil „tab_“ und dem Kundennamen zusammen. Erweiterungen innerhalb der Tabellen werden automatisch mit ausgewertet.

thehos_740_3

Ich nutze die Funktion WENNNV, um #NV beim SVERWEIS zu vermeiden (seit Excel 2013) und WENNFEHLER, um generell Fehler abzufangen. Zum Beispiel, wenn die Felder leer sein sollten.

=WENNFEHLER(WENNNV(SVERWEIS($C3;INDIREKT("tab_"&$B3);2;FALSCH);"kein passender Eintrag");"")

Viel Spaß beim Nachbasteln
Andreas

Die Übungsdatei: Excel 740 SVERWEIS und INDIREKT

Hier geht’s zum Video:

Videolink zu YouTube: https://youtu.be/82FalCURBYk