DatenbankManufaktur

Benutzerdefinierte Funktionen (UDF) in Excel

Eine benutzerdefinierte Funktion, kurz UDF (User Defined Function), arbeitet in Excel wie eine Tabellenblattfunktion. Sie kann über den Funktions-Assistenten aufgerufen oder direkt in eine Zelle eingegeben werden. Name, Parameter und Rückgabewert werden aber vom Benutzer (also Ihnen) im VBA-Editor angelegt. Dort wird auch der eigentliche Ablauf der Funktion festgelegt.

Beispiel

Um den Umfang eines Kreises leichter auszurechen, soll die Formel 2*r*Pi als Formel hinterlegt werden. Öffnen Sie den Visual-Basic-Editor (VBE) und fügen Sie ein neues Modul ein. Dort legen Sie die neue Funktion an:

Public Function Kreisumfang(Radius As Double) As Double

End Function

Die neue Funktion heißt Kreisumfang, erwartet als Parameter den Radius des Kreises als Zahl und gibt eine Zahl zurück. Damit der Umfang auch ausgerechnet wird, muss die Verarbeitung noch festgelegt werden:

   Kreisumfang = Radius * 2 * WorksheetFunction.Pi

Der Rückgabewert Kreisumfang wird erst mit zwei und dann mit Pi multipliziert. Für Pi gibt es schon die eingebaute Excel-Tabellenblattfunktion, die den Wert bis auf 14 Stellen hinter dem Komma genau zurückgibt.

Zum Testen kann die Funktion im Direktfenster aufgerufen werden.

Im Tabellenblatt wird die neue Funktion z.B. in der Zelle B1 mit =Kreisumfang(A1) aufgerufen. Steht in der Zelle A1 die Zahl 3, rechnet die Funktion 3 * 2 * 3,14159265358979 = 18,8495559215387 und diese Zahl erscheint (gerundet) in der Zelle B1.

Es sind natürlich auch mehrere Parameter und kompliziertere Logiken innerhalb der Funktion möglich. Hier finden Sie ein paar Beispiele. Die UDF funktionieren natürlich auch in Excel:mac.

Wenn Ihnen das alles zu kompliziert ist, Sie viele Funktion an mehrere Leute verteilen wollen oder noch Größeres vorhaben, dann kann ich Sie dabei professionell unterstützen. Nehmen Sie einfach Kontakt mit mir auf.