09.02.2014 Aufrufe

Ein VBA-Programm in Excel

Ein VBA-Programm in Excel

Ein VBA-Programm in Excel

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.1.3 Unterprogrammtechnik<br />

Um den <strong>Programm</strong>code <strong>in</strong> kle<strong>in</strong>e unabhängige und überschaubare <strong>E<strong>in</strong></strong>heiten<br />

zu unterteilen, stehen <strong>in</strong> <strong>VBA</strong> zwei Varianten zur Verfügung –<br />

Prozeduren und Funktionen.<br />

Prozeduren beg<strong>in</strong>nen, wie im vorherigen Beispiel e<strong>in</strong>es Makros zu sehen,<br />

immer mit Sub, gefolgt von dem Prozedurnamen, und enden immer<br />

mit End Sub.<br />

Sub Prozedurname [(Argumente)]<br />

Anweisung<br />

...<br />

Anweisung<br />

End Sub<br />

Die (optionalen) Argumente können Referenzen (nicht der Wert selber<br />

wird übergeben, sondern der Zeiger, also die Adresse im Arbeitsspeicher)<br />

oder Werte se<strong>in</strong>. Zudem kann ihnen der Datentyp mitgegeben<br />

werden.<br />

Beispiel:<br />

Sub TestProzedur (ByRef Argument1 As Integer, ByVal Argument2 As Long)<br />

Zeiger = Argument1<br />

Wert = Argument2<br />

End Sub<br />

Der Aufruf dieser Prozedur sieht dann entweder so aus:<br />

TestProzedur Parameter1, Parameter2 oder so:<br />

Call TestProzedur(Parameter1, Parameter2)<br />

Prozeduren können Aktionen unterschiedlicher Art ausführen, sie können<br />

aber ke<strong>in</strong>e Werte zurückgeben. Hierzu bedarf es e<strong>in</strong>er Funktion.<br />

Die Syntax e<strong>in</strong>er Funktion ist ähnlich wie bei e<strong>in</strong>er Sub: sie beg<strong>in</strong>nen<br />

mit Function und enden mit End Function:<br />

[Public] [Private] [Static] Function Funktionsname [(Argumente)] [As<br />

Typ]<br />

Anweisung<br />

...<br />

Anweisung<br />

End Function<br />

2.1.4 Objekte, Eigenschaften und Methoden<br />

An dieser Stelle möchte ich die Gelegenheit nutzen, herauszustellen,<br />

warum <strong>VBA</strong> für viele Anwendungen e<strong>in</strong>e gute Alternative zu den etab-<br />

10

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!