Zellwert und Formel mit SVERWEIS übernehmen
Schritt-für-Schritt-Anleitung
Um sowohl den Zellwert als auch die Formel aus einer anderen Excel-Datei mit SVERWEIS zu übernehmen, benötigst du eine benutzerdefinierte Funktion in VBA. Hier sind die Schritte:
-
Öffne deine Excel-Arbeitsmappe.
-
Drücke ALT + F11, um den VBA-Editor zu öffnen.
-
Gehe zu Einfügen > Modul, um ein neues Modul zu erstellen.
-
Füge den folgenden VBA-Code ein:
Function SVERWEISExtended(lookup_value As Variant, table_array As Range, col_index_num As Integer, Optional range_lookup As Boolean = False) As Variant
Dim result As Variant
result = Application.WorksheetFunction.VLookup(lookup_value, table_array, col_index_num, range_lookup)
If Not IsError(result) Then
Dim formula As String
formula = Application.Index(table_array.Columns(col_index_num).Formula, Application.Match(lookup_value, table_array.Columns(1), 0))
SVERWEISExtended = result & " (Formel: " & formula & ")"
Else
SVERWEISExtended = "Nicht gefunden"
End If
End Function
-
Schließe den VBA-Editor und gehe zurück zu deiner Excel-Datei.
-
Verwende die neue Funktion wie folgt in einer Zelle:
=SVERWEISExtended(A2;[xy.xls]xyz!$A:$L;5;FALSCH)
Diese Funktion ermöglicht es dir, den Zellwert und die dazugehörige Formel aus der angegebenen Tabelle zu übernehmen.
Häufige Fehler und Lösungen
Alternative Methoden
Wenn du keine VBA-Funktion verwenden möchtest, kannst du die Werte manuell aus der anderen Datei kopieren. Diese Methode ist jedoch weniger effizient und erfordert zusätzliche Schritte.
- Öffne die Quelle der Daten.
- Kopiere die Zelle, die du benötigst (z.B. C5).
- Füge die Zelle in deine Zielarbeitsmappe ein und wähle "Inhalte einfügen > Werte".
Diese Methode speichert jedoch nur den Zellwert und nicht die Formel.
Praktische Beispiele
Angenommen, du hast eine Excel-Datei Daten.xlsx mit folgendem Inhalt in den Zellen:
| A |
B |
C |
| 1 |
2 |
=A1+B1 |
| 2 |
3 |
=A2+B2 |
Wenn du die Funktion SVERWEISExtended in einer anderen Datei verwenden möchtest, könnte der Aufruf wie folgt aussehen:
=SVERWEISExtended(2;[Daten.xlsx]Tabelle1!$A$1:$C$2;3;FALSCH)
Dies gibt dir den Wert 5 (Formel: =A2+B2) zurück.
Tipps für Profis
- Sichere deine Datei regelmäßig, bevor du Änderungen im VBA-Editor vornimmst.
- Teste die Funktion zunächst mit einer kleinen Datenmenge, um sicherzustellen, dass sie wie gewünscht funktioniert.
- Nutze die Excel-Dokumentation, um mehr über benutzerdefinierte Funktionen und die Verwendung von VBA zu erfahren.
FAQ: Häufige Fragen
1. Kann ich die SVERWEIS-Funktion auch ohne VBA nutzen?
Ja, aber du kannst nur den Zellwert übernehmen, nicht die Formel.
2. Was mache ich, wenn ich eine Fehlermeldung bekomme?
Überprüfe den lookup_value, die Datei-Referenz und ob die Datenquelle geöffnet ist.
3. Ist die benutzerdefinierte Funktion in jeder Excel-Version verfügbar?
Ja, solange du eine Version von Excel verwendest, die VBA unterstützt.