Oft gibt es in Kalkulationsblättern Berechnungen welche immer wieder identisch durchgeführt werden müssen. Eine spezielle Umsatzberechnung, eine Provisionsberechnung, eine Zeitumrechnung und gerade für Ihre Berechnung kennt Excel keine Funktion. In solch einem Fall kann eine benutzerdefinierte Funktion hergestellt werden.
Die Grundliegende Syntax ist:
Function Funktionsname(Übergabewert) Anweisungen Funktionsname=Variable End Function
Konkret:
function MeineMultiplikation(Basis,Faktor) MeineMultiplikation=Basis*Faktor End Function
Damit ist eine erste benutzerdefinierte Funktion geschrieben.
In
Excel werden Sie nun mit dem Funktionsassistenten in der Kategorie
Benutzerdefiniert die Funktion MeineMultiplikation finden welche zwei Werte als
Eingabe erwartet.
Die Erstellung eines Hilfetextes für die Funktion ist weiter unten beschrieben.
Die
Beschriftung der beiden Parameter "Basis" und "Faktor"
erscheint aufgrund der Angaben in den Klammern der Funktion.
Das Erstellen eines Hilfstextes für diese Parameter ist nur mit dem Einsatz
eines Help-Files möglich.
Dieses einfachste erste Funktion soll zeigen wie die Datenrückgabe aus einer Funktion aufgebaut ist. Der Name der Funktion bildet den Rückgabewert der Funktion.
Benutzerdefinierte Funktionen können wie folgt aufgerufen werden:
Rückgabewert = Funktionsname(Parameter 1[,Parameter n])
Um für die Funktion einen Hilfetext zu erstellen gehen Sie wie folgt vor:
Die Erstellung weiterer Hilfe zu den Variabeln benötigt den Hilfecompiler
(HC31.EXE) von Microsoft welcher beispielsweise in VB enthalten ist.
Bequemere Versionen des HC31 werden zum Beispiel mit der Software Doc2Help im
Internet angeboten. Eine Demoversion ist verfügbar.
Funktion Bruttogewinn(VerkaufteStückzahl;Kosten;Stückpreis) Bruttogewinn=VerkaufteStückzahl*(Stückpreis-Kosten) Ende Funktion
Funktion Reingewinn(VerkaufteStückzahl;Kosten;Stückpreis;Steuersatz) Bruttogewinn=VerkaufteStückzahl*(Stückpreis-Kosten) Reingewinn=Bruttogewinn*(1-Steuersatz) Ende Funktion
Function Provision(VerkaufteAktien;PreisJeAktie) GesamtVerkaufspreis=VerkaufteAktien*PreisJeAktie If GesamtVerkaufspreis<=1500 then Provision=25+0.3*VerkaufteAktien else Provision=25+0.3*(0.9*VerkaufteAktien) End if End Function
' Deklaration von Konstanten const KEHRSTEUERSATZ=0.28 const ZUSCHLAGSGRENZE=1000000 const STEUERZUSCHLAG=0.1 Function Steuer(Stückzahl;KaufpreisAktie;VerkaufspreisAktie) Gewinn=Stückzahl*(VerkaufspreisAktie-KaufpreisAktie) If Gewinn<=0 then Steuer=0 ElseIf Gewinn>ZUSCHLAGSGRENZE then Steuer=(KEHRSTEUERSATZ*Gewinn)+_ (Gewinn-ZUSCHALGSGRENZE)*STEUERZUSCHLAG else Steuer=Gewinn+KEHRSTEUERSATZ end If End Function
Function Aktienverkauf(Kaufpreis;AnzahlDerAktien;Verkaufspreis) Bruttogewinn=AnzahlDerAktien*(Verkaufspreis-Kaufpreis) MeineProvision=Provision(AnzahlDerAktien;Verkaufspreis) MeineSteuer=Steuer(AnzahlDerAktien;Kaufpreis;Verkaufspreis) Aktienverkauf=Bruttogewinn-MeineProvision-MeineSteuer End Function
Beachten Sie dass Funktionen und Variablen keine Redundanten Namen bekommen
dürfen. Dies ist in obigen Beispielen nicht gewährleistet!