Office Excel: VBA - Erste Schritte

Visual Basic ist eine Programmiersprache von Microsoft. Über bestimmte Programme, wie etwa Excel, kann ein VBA-Editor geöffnet werden. Im Folgenden zeigen wir Ihnen, wie Sie diesen Editor öffnen und geben Ihnen eine kurze Einführung in die Grundsätze von Visual Basic, damit Sie lernen, wie Sie die VBA-Programmierung nutzen können.
- VBA-Editor in Excel öffnen
- Was kann ich mit Visual Basic anfangen?
- Visual Basic Programmierung mit dem Excel-VBA-Editor
VBA-Editor in Excel öffnen
Es ist sehr einfach, den VBA-Editor in Excel zu öffnen und dann mit dessen Hilfe einige Makros zu erstellen. Drücken Sie dazu lediglich die Tastenkombination [Alt] + [F11].
Was kann ich mit Visual Basic anfangen?
Sie können Visual Basic nutzen, um Makros zu programmieren. Diese Makros helfen Ihnen durch Ihren Office-Alltag. So können Sie Prozesse automatisieren und eine ganze Reihe an Operatoren und Befehlen mit einem einzelnen Klick starten oder auch Excel-Dokumente genau an Ihre Anforderungen anpassen und Sie beispielsweise mit zusätzlichen Eingabe- oder Ausgabe-Fenstern versehen. Außerdem können Sie VBA dazu nutzen, um auch direkte Verbindungen mit anderen Microsoft-Office Produkten einzugehen, z.B. um Dateien aus Outlook in Excel zu importieren. Weitere Tipps zur vielseitigen Verwendung von Visual Basic in Excel finden Sie direkt bei Microsoft.
Visual Basic Programmierung mit dem Excel-VBA-Editor
Eine Übersicht der wichtigsten Eingaben
Um ein neues Programm anzulegen, müssen Sie die folgenden zwei Schritte ausführen. Danach können Sie Ihr Grundgerüst mit Daten füllen, wie etwa Schleifen und Variablen.
Variablen benutzen
Sie können nun Variablen einfügen, welche Sie als einen Datentyp deklarieren müssen. Dies können Sie über den Befehl "Dim [Variable] as [Datentyp]" tun. Die Wahl des Datentyps ist dabei an den Inhalt der Variablen geknüpft:
- Integer: Ganze Zahlen von -32768 bis 32767
- Long: Ganze Zahlen von etwa plus/minus 2147483647
- Double: Fließkommazahlen von etwa plus/minus 1,79 * 10^308
- String: Zeichenkette, die 0 bis 65535 Zeichen enthalten kann
- Boolean: Logische Werte, also nur true oder false
- Variant: Kann beliebige Daten enthalten
For-Schleife
For
Variable = [Startwert] To [Endwert] Step [Wert]
BefehlNext Variable
Hier wird die Schleife ausgeführt, sobald die Variable den Startwert erreicht hat. Die Variable wird dann entsprechend des nach "Step" festgelegten Wertes erhöht, bis der Endwert erreicht ist.
Do-Schleife
Do
Befehle
Hier werden Befehle ausgeführt, die von einem Ausdruck abhängig sind. Bei "while" werden die Befehle so lange ausgeführt, wie der Ausdruck gültig ist. Bei "until" werden die Befehle so lange ausgeführt, bis der Ausdruck gültig ist. So können Sie eine Schleife programmieren, die auf einen Wert immer 1 addiert, bis dieser Wert 100 erreicht. Das geht entweder mit dem Ausdruck "Loop While i<101" oder mit dem Ausdruck "Loop Until i=100". Beachten Sie, dass bei dem "While"-Ausdruck der Wert tatsächlich 101 betragen muss. Die Schleife endet dann, wenn i=100 ist, weil dies der kleinste Ausdruck unter 101 ist.
Loop [While/Until] Ausdruck
If-Entscheidung
If [Ausdruck1] Then
Befehl1
Elseif [Ausdruck2] Then
Befehl2
Else
Befehl3
Mit einem If-Befehl trifft das Programm automatisch Entscheidungen. Im obenstehenden Code wird geprüft, ob Ausdruck1 stimmt. Wenn dies der Fall ist, wird Befehl1 ausgeführt. Ist dies nicht der Fall, wird geprüft, ob Ausdruck2 stimmt. Ist Ausdruck2 korrekt, wird Befehl2 ausgeführt. Passen beide Bedingungen nicht, wird Befehl 3 ausgeführt. So könnte die Schleife beispielsweise sagen:
End if
If i>0 Then
MsgBox(Die Variable ist größer als 0.)
Elseif i<0 Then
MsgBox(Die Variable ist kleiner als 0.)
Else
MsgBox(Die Variable ist gleich 0.)
In diesem Beispiel lauten die Befehle, dass ein Nachrichtenfenster erscheint. Im Folgenden zeigen wir Ihnen, wie Sie Befehle zur Daten-Ausgabe nutzen können.
End if
Werte ausgeben
Dazu können Sie einen der folgenden Befehle einbinden, sodass Ihre Daten direkt ausgegeben werden, z.B. in der Excel-Tabelle:
- Debug.Print [Wert] Der Wert wird im Direktbereich des VBA Editors ausgegeben.
- MsgBox(Nachricht) Die Ausgabe erfolgt in einem separaten Fenster, einer sogenannten Messagebox.
- [Wert] = InputBox(Eingabefrage, Titel des Fensters) Hier erfolgt die Werteeingabe durch den Benutzer in einem separaten Fenster, dessen Titel Sie selbst bestimmen können. Außerdem müssen Sie eine Frage formulieren, von der die Eingabe abhängt.
- TabelleX.Cells(Zeile,Spalte) = [Wert] Der Wert wird in der angegebenen Tabelle innerhalb der angegebenen Zeilen und Spalten ausgegeben.
- [Wert] = TabelleX.Cells(Zeile,Spalte) Die Werte aus der angegebenen Tabelle aus den angegebenen Zeilen und Spalten werden eingelesen.
Beachten Sie hierbei auf jeden Fall die Position von [Wert], also ob dieser Ausdruck zu Anfang oder zu Ende steht. Davon ist abhängig, ob Ihre Daten aus einer Tabelle eingelesen werden oder in diese Tabelle ausgegeben werden.