Eigene Excel-Funktionen erstellen: Unsere Anleitung zeigt, wie es geht
Mehr zum Thema: MicrosoftWas sonst nur VBA-Programmierer tun, soll Ihnen als „normalem“ Excel-Anwender nicht vorenthalten bleiben. So können Sie eigene Excel-Funktionen erstellen!

- Eigene Excel-Funktionen erstellen: Unsere Anleitung zeigt, wie es geht
- Excel: Makros aufzeichen - so geht's
Sie können in Excel eine Funktion aufrufen, indem Sie auf der Registerkarte Start neben dem Summenzeichen auf die kleine, nach unten weisende Pfeilspitze klicken. Oder noch einfacher: Sie geben in einer Tabellenzelle ein Gleichheitszeichen und danach die Anfangsbuchstaben der gewünschten Funktion ...
Sie können in Excel eine Funktion aufrufen, indem Sie auf der Registerkarte Start neben dem Summenzeichen auf die kleine, nach unten weisende Pfeilspitze klicken. Oder noch einfacher: Sie geben in einer Tabellenzelle ein Gleichheitszeichen und danach die Anfangsbuchstaben der gewünschten Funktion ein. Daraufhin erscheint eine Auswahlliste mit übereinstimmenden Funktionsnamen.
In den Auswahlen erscheinen sowohl die in Excel vordefinierten Funktionen, wie z.B. SUMME oder MITTELWERT, aber auch benutzerdefinierte Funktionen, jedoch keine Makros. In der Sprache von VBA sind Makros Subs, Funktionen geben einen Wert zurück und heißen Functions. Allerdings sind Funktionen nicht weit von den Makros entfernt, und für den Nicht-Programmierer bietet es sich aus praktischen Gründen an, zunächst ein (leeres) Makro zu erstellen und anschließend daraus die gewünschte Function zu machen.

Gehen Sie folgendermaßen vor, um nach Bedarf eine eigene Excel-Funktion zu erstellen:
Schritt 1:
Beginnen Sie die Aufzeichnung eines Makros (siehe Seite 2). Geben Sie dem Makro einen passenden Namen und speichern Sie es in der aktuellen Arbeitsmappe.
Schritt 2:
Führen Sie für das Makro keinerlei Aktionen durch, sondern beenden Sie es sofort wieder.
Schritt 3:
Klicken Sie nun am rechten Ende der Registerkarte Ansicht auf die obere Hälfte der Schaltfläche Makros. Selektieren Sie den Makronamen im Dialogfeld und klicken Sie auf Bearbeiten.

Schritt 4:
Sie befinden sich nun im VBA-Editor im Code des eben erstellten Makros. Um aus dem Makro eine Funktion zu machen, ersetzen Sie in der ersten und letzten Zeile jeweils das Wort Sub mit Function. Alles, was zwischen diesen beiden Zeilen liegt, können Sie löschen.
Schritt 5:
Weisen Sie stattdessen dem Funktionsnamen die gewünschte Berechnung zu, in der Form <Funktionsname> = <Berechnung>. Die folgende Funktion berechnet die in einem Bruttobetrag enthaltene 19 %ige Mehrwertsteuer nach der Formel Bruttobetrag /119 * 19:
Function MwSt_
ausrechnen(Bruttobetrag)
MwSt_ausrechnen = Bruttobetrag /119 * 19
End Function
Da der Bruttobetrag ein beim Aufruf der Funktion anzugebender Wert ist, müssen Sie in der Kopfzeile der Funktion in den runden Klammern einen Namen dafür angeben. Dieser Name (im Programmierjargon spricht man von einer Variablen) dient gewissermaßen als Platzhalter für den tatsächlichen Wert.
Lesetipp: Excel Dropdown-Liste erstellen - Anleitung
Schritt 6:
Speichern Sie die Funktion im VBA-Editor, indem Sie links oben in der Symbolleiste oder im Datei-Menü auf das Diskettensymbol klicken.Hierzu noch die folgenden Hinweise: Die gezeigte Kurzform funktioniert nur, wenn oben im Modul nicht Option Explicit gesetzt ist. Standardmäßig ist dies nicht der Fall. Andernfalls können Sie die Zeile weglöschen oder mit einem einleitenden Apostroph auskommentieren (’Option Explicit). Der Apostroph unterbindet die Ausführung von Befehlen, die danach kommen.

In der ausführlichen Variante der Funktion "MwSt_ausrechnen" wird der Datentyp für das Funktionsergebnis und den anzugebenden Bruttobetrag genannt (in diesem Fall Double für Zahlen, die Nachkommastellen enthalten können), sodass die Kopfzeile Function MwSt_ausrechnen(Bruttobetrag As Double) As Double lautet. Des Weiteren steht es Ihnen im ersten Schritt natürlich frei, eine benutzerdefinierte Funktion in Ihrer persönlichen Arbeitsmappe zu speichern, sodass sie in allen geöffneten Arbeitsmappen verfügbar ist. Das hat allerdings den Nachteil, dass sie in den Auswahllisten nicht unter ihrem Anfangsbuchstaben gefunden wird.