
In Excel verwende ich sehr oft eine lange Formel (mit nur einem Argument).
Gibt es eine Möglichkeit, daraus eine „benutzerdefinierte“ Funktion (UDF) zu machen, ohne VB zu verwenden (ähnlich der Art und Weise, wie ein Benutzer benutzerdefinierte Stile und Vorlagen in Word erstellen kann)?
Wenn nein, gibt es eine Möglichkeit (z. B. eine Website), eine Excel-Formel in VB-Code umzuwandeln?
Antwort1
Das Erstellen einer UDF-ähnlichen Methode oder, wie ich es nennen kann, einer UDF ohne VBA in Excel und das Konvertieren einer Excel-Formel in VBA-Code sind zwei verschiedene Dinge.
Lassen Sie mich einen nach dem anderen durchgehen.
1. UDF ohne VBA:
Ja, das ist möglich. Sie können dies mit der Methode NAMED RANGE tun.
Wie es funktioniert:
- Schreiben Sie die Formel in die Zelle, die Sie verwenden möchten.
- Wählen Sie die Zelle aus.
- Um nun den Namensmanager zu erhalten, verwenden Sie entwederStrg+F3oder klicken Sie auf der Registerkarte FORMEL auf den Namens-Manager.
- Klicken Sie auf Neu, weisen Sie der Zelle einen geeigneten Namen zu und schließen Sie mit OK ab.
Jetzt können Sie diesen Namen als UDF verwenden, Excel verwendet diese Formel.
Denken Sie daran, dass dies nur mit einfachen und unkomplizierten Formeln funktioniert.
2. Excel-Formel in VBA-Code konvertieren:
Bei dieser Methode sollte berücksichtigt werden, wie Excel-Formeln mit/als/durch VBA-Code verwendet werden.
Methoden dazu gibt es viele, einige möchte ich hier zeigen.
Range("G2").Formula = "=IFERROR(VLOOKUP(A1,$A$5:$E$25,2,FALSE),"")
Dadurch wird der Zelle eine Formel zugewiesen
G2
.
X = Application.WorksheetFunction.IFERROR(VLOOKUP(A1,$A$5:$E$25,2,FALSE),"")
- Dadurch wird der Variablen die Formel zugewiesen
X
.
Achtung
Die oben verwendeten Formeln können bearbeitet werden.
Weitere Unterstützung erhalten Sie auf der Microsoft-Website.