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.

Möchte man e<strong>in</strong>en array anlegen, so geschieht das ebenfalls mit Dim,<br />

gefolgt von dem Variablennamen und anschließender Klammerung ().<br />

Damit lässt man sich aber die Dimensionierung und die Länge des<br />

arrays noch offen.<br />

Beispiele:<br />

Dim Zahl1 As Integer 'Integer-Variable namens Zahl<br />

Const Zahl2 = 10 'Speicherplatz Zahl2 mit festem Wert 10<br />

Dim Zahl() As Integer 'Integer-array ohne Dimension und ohne Länge<br />

Es gibt drei mögliche Gültigkeitsbereiche für e<strong>in</strong>e Variable:<br />

a) Wird die Variable nur <strong>in</strong>nerhalb e<strong>in</strong>er Prozedur benötigt, handelt es<br />

sich um e<strong>in</strong>e lokale Variable. Die Deklaration steht dann am Anfang<br />

e<strong>in</strong>er Prozedur.<br />

Sub Test()<br />

Dim Me<strong>in</strong>eVariable As Long<br />

gültig<br />

Anweisung<br />

...<br />

Anweisung<br />

End Sub<br />

'Me<strong>in</strong>eVariable ist nur <strong>in</strong>nerhalb der Prozedur Test()<br />

b) Wird die Variable <strong>in</strong> mehreren Prozeduren e<strong>in</strong>es Moduls benötigt, so<br />

muss sie als globale Variable am Anfang des Moduls deklariert werden<br />

mit Dim oder Private als Anweisung. Unter dem Begriff "Modul"<br />

muss man sich e<strong>in</strong>fach e<strong>in</strong>en Conta<strong>in</strong>er vorstellen, der Quellcode<br />

enthält – der Code muss ja schließlich irgendwo untergebracht se<strong>in</strong>. Je<br />

nachdem, wofür so e<strong>in</strong> Modul genutzt wird, wird unterschieden z.B.<br />

zwischen e<strong>in</strong>em Modul für Userformen (siehe 2.5.1 Eigene Dialoge entwerfen<br />

und programmieren) oder e<strong>in</strong>em Modul für e<strong>in</strong> Tabellenblatt<br />

(siehe 2.5 Der Kern des <strong>Programm</strong>s: die Auslosung) oder e<strong>in</strong>em Modul<br />

für die Ereignissteuerung (siehe 2.4 Ereignisse <strong>in</strong> VBE) oder ...<br />

Dim Me<strong>in</strong>eVariable As Long 'Me<strong>in</strong>eVariable ist auf Modulebene gültig<br />

Private Me<strong>in</strong>eVariable1 As Long 'ebenso Me<strong>in</strong>eVariable1<br />

Sub Test()<br />

Anweisung<br />

...<br />

Anweisung<br />

End Sub<br />

c) Soll die Variable auch <strong>in</strong> anderen Modulen des Projektes Gültigkeit<br />

haben, muss sie als öffentliche Variable mit Public deklariert werden.<br />

Public Me<strong>in</strong>eVariable As Long 'Me<strong>in</strong>eVariable ist im ganzen Projekt gültig<br />

Sub Test()<br />

Anweisung<br />

...<br />

Anweisung<br />

End Sub<br />

7

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!