Registername als Variable im Sverweis nutzen
Schritt-für-Schritt-Anleitung
Um den SVERWEIS in Excel so zu gestalten, dass der Registername dynamisch aus einer Zelle abgerufen wird, kannst du die Funktion INDIREKT() verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
-
Zelle mit Registername: Trage den Namen des Registers, auf das du zugreifen möchtest, in eine Zelle ein (z.B. D10).
-
SVERWEIS-Formel anpassen: Ersetze die statische Registerreferenz in deiner SVERWEIS-Formel durch die INDIREKT()-Funktion. Deine Formel sollte folgendermaßen aussehen:
=SVERWEIS($B14;INDIREKT("'"&D10&"'!$B$2:$L$604");3;0)
-
Überprüfen: Stelle sicher, dass der Registername in Zelle D10 korrekt ist und auf ein existierendes Register verweist.
Diese Methode ermöglicht es dir, den Registername einfach zu ändern, ohne die gesamte Formel anpassen zu müssen.
Häufige Fehler und Lösungen
-
Fehler: #BEZUG!
Ursache: Der Registername in der Zelle D10 ist falsch oder das Register existiert nicht.
Lösung: Überprüfe den Inhalt von D10 und stelle sicher, dass das Register mit diesem Namen vorhanden ist.
-
Fehler: #NV
Ursache: Der gesuchte Wert ist im angegebenen Bereich nicht vorhanden.
Lösung: Stelle sicher, dass der Wert in $B14 im Suchbereich existiert.
Alternative Methoden
Eine alternative Methode zur Verwendung von Registernamen in einer SVERWEIS-Formel ist die Verwendung von Excel VBA, wenn du komplexere Anforderungen hast. Mit VBA kannst du benutzerdefinierte Funktionen erstellen, die Registernamen als Variablen nutzen können. Hier ist ein einfaches Beispiel:
Function SverweisMitVariable(suchwert As Variant, registername As String) As Variant
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(registername)
SverweisMitVariable = Application.WorksheetFunction.VLookup(suchwert, ws.Range("B2:L604"), 3, False)
End Function
Diese Funktion kannst du dann in deinem Excel-Dokument aufrufen, indem du den gewünschten Suchwert und den Namen des Registers übergibst.
Praktische Beispiele
Angenommen, du hast folgende Daten auf dem Register „Daten“ und möchtest den Preis eines Produkts basierend auf der Produkt-ID abrufen:
-
Register „Daten“:
-
Zelle D10: „Daten“
-
SVERWEIS-Formel:
=SVERWEIS($A2;INDIREKT("'"&D10&"'!$A$2:$B$604");2;0)
Diese Formel sucht die Produkt-ID in Spalte A des Registers „Daten“ und gibt den Preis aus Spalte B zurück.
Tipps für Profis
- Nutze benannte Bereiche für eine bessere Übersicht. Du kannst einen Bereich in Excel benennen (z.B. „Preise“), um deine Formeln lesbarer zu machen.
- Teste deine Formeln in einer neuen Arbeitsmappe, um sicherzustellen, dass alles korrekt funktioniert, bevor du sie in dein Hauptdokument überträgst.
- Achte darauf, dass die Zellreferenzen und Bereiche korrekt definiert sind, um Fehler zu vermeiden.
FAQ: Häufige Fragen
1. Wie kann ich die Formel auf mehrere Register anwenden?
Du kannst die Formel einfach kopieren und die Zelle, die den Registernamen enthält, entsprechend anpassen.
2. Gibt es eine Begrenzung für die Anzahl der Register, die ich verwenden kann?
Nein, du kannst beliebig viele Register in einer Arbeitsmappe haben, solange die Formeln korrekt referenzieren.
3. Funktioniert dies auch in älteren Excel-Versionen?
Ja, die Funktionen SVERWEIS() und INDIREKT() sind in den meisten Excel-Versionen verfügbar. Achte jedoch darauf, dass die Funktionalität in Excel 2007 und später am besten unterstützt wird.