Startseite | » Excel – Automatisierung (5)
Excel – Automatisierung (5)
von Helga Hilke | 16. April 2010
Sie nutzen die Excel-Funktionen, ohne Probleme dabei zu haben? Die meist genutzten sind bestimmt Summe oder Mittelwert. Sie wissen, dass es in Excel einen enormen Vorrat an Funktionen gibt. Und dennoch kam es neulich vor, dass Sie eine Funktion suchten, die es in Excel nicht gab. Dann werden Sie von nun an in der Lage sein, Funktionen selbst zu schreiben, die Sie häufig brauchen! Arbeiten Sie einfach die Vorschläge dieses Beitrags ab.
Sie sollten die vorhergehenden Beiträge dieser Serie bereits nachvollzogen haben, bevor Sie nun meine Hinweise abarbeiten.
Funktionen mittels VBA-Befehlen schreiben
Sie erstellen nachfolgend eine Funktion, die den Umfang eines Kreises mit einem bekannten Radius berechnet.
- Öffnen Sie Ihre Übungsdatei mit den bereits vorhandenen Makros.
- Rufen Sie den VBA-Editor auf.
- Setzen Sie den Cursor unter die bereits vorhandenen Makros.
- Schreiben Sie folgenden Quelltext
Function KreisUmfang(Radius)
Kreisumfang = 2 * 3.1415926 * Radius
End Function - Speichern Sie.
Zur Erläuterung: Die Funktion erhält (wie auch die Makros) einen Namen. In Klammern steht der Übergabewert (es können auch mehrere sein). Es ist ein Wert, den die Formel braucht, um das Ergebnis berechnen zu können. Das berechnete Ergebnis muss dem Funktionsnamen zugeordnet werden.
- Versuchen Sie mit F5 zu testen – es klappt nicht.
- Wechseln Sie in das Excel-Fenster.
- Geben Sie in A12 einen beliebigen Radius ein (z. B. 5)
- Fügen Sie in A13 die Funktion für die Berechnung des Kreisumfangs ein. Nutzen Sie dazu den Funktionsassistenten. Sie können erkennen, dass Ihre Funktion Kreisumfang dort als Funktion bekannt ist. Wählen Sie die Funktion Kreisumfang aus. Als Parameter wird nun der Radius abverlangt. Geben Sie A12 ein und bestätigen Sie mit OK.
Funktionen für alle Excel-Arbeitsmappen verfügbar machen
Die Funktion Kreisumfang ist allerdings nur in dieser Excel-Datei bekannt. Wenn Sie eine selbst geschriebene Funktion für alle Excel-Arbeitsmappen verfügbar haben wollen, müssen Sie die Funktion als Add-In speichern. Trainieren Sie an folgendem Beispiel.
- Öffnen Sie eine neue Arbeitsmappe.
- Wechseln Sie in den VBA-Editor.
- Erzeugen Sie ein Modul über das Menü Einfügen / Modul.
- Schreiben Sie zunächst im Modul1 eine neue Funktion:
Function Quadrat(Wert)
Quadrat = Wert * Wert
End Function - Wechseln Sie zur Arbeitsblattansicht und wählen Sie
OFFICE-SCHALTFLÄCHE / VORBEREITEN / EIGENSCHAFTEN
Tragen Sie als Titel Test Add-In ein
Geben Sie als Kommentar ein: Kleines Beispiel-Add-In zu Testzwecken
Schließen Sie den Dialog. - Wählen Sie Speichern Unter und wählen Sie als Dateityp
Microsoft Excel-Add-In (*.xla) (bzw. xlam)
Als Ordner wählt Excel automatisch den Standardordner für Add-Ins. Sie können aber auch jeden beliebigen anderen Ordner verwenden.
Tragen Sie als Dateiname Test.xla ein.
Wundern Sie sich nicht, dass weiterhin als Name der angezeigten Arbeitsmappe „Mappe1“ steht. Das Add-In wurde als separate Datei gespeichert und hat nun nichts mehr mit dieser Arbeitsmappe zu tun.
- Schließen Sie Excel und starten Sie Excel erneut.
Auf die Frage, ob Änderungen in Mappe1 gespeichert werden sollen, antworten Sie mit Nein.
Auch wenn Sie das Add-In bereits erstellt haben, so ist es doch noch nicht installiert:
- Wählen Sie Excel-Optionen / Add-Ins
Im Auswahlfenster sehen Sie alle Excel bekannten Funktionssammlungen. Die von Ihnen erzeugte ist noch nicht dabei, gehen Sie auf „Durchsuchen“. Nunmehr steht die Funktionsbibliothek Test.xla zur Verfügung.
- Testen Sie, indem Sie in A1 einen Wert eingeben etwa 123,45
- In A2 geben Sie die Formel =Quadrat(A1) ein.
- Als Ergebnis wird in A2 die Zahl 15239,9025 angezeigt.
Im nächsten Beitrag dieser Serie zeige ich Ihnen, wie man so genannte Ereignisse nutzt. Seien Sie gespannt!
Themen: Lernunterstützung, Tipps für IT-Berufe, Tipps für MS Office | Keine Kommentare »