Mit Visual Basic Ap­pli­ca­ti­ons in Excel können Sie sich um die Au­to­ma­ti­sie­rung von Ar­beits­ab­läu­fen in Excel kümmern. Auf diese Weise sparen Sie Zeit und sorgen dafür, dass Ihre Daten au­to­ma­tisch auf dem neusten Stand bleiben.

Excel mit Microsoft 365 Business von IONOS!
Ver­netz­tes Arbeiten mit Microsoft 365
  • Bewährt: Voll­stän­di­ges Office-Paket
  • Sicher: 1 TB zentraler Spei­cher­platz
  • Orts­un­ab­hän­gig: Auf bis zu 5 Geräten in­stal­lier­bar

Was ist Excel VBA?

VBA ist die Kurzform von „Visual Basic for Ap­pli­ca­ti­on“, eine Skript­spra­che, die Microsoft-Office-Nutzenden in An­wen­dun­gen wie Excel zur Verfügung steht. Ent­wi­ckelt wurde VBA in den 1990er-Jahren, um die ver­schie­de­nen Makro-Sprachen der einzelnen Ap­pli­ka­tio­nen zu ver­ein­heit­li­chen. Mit VBA in Excel lassen sich re­gel­mä­ßi­ge Ar­beits­ab­läu­fe au­to­ma­ti­sie­ren und prak­ti­sche Tools fürs Pro­jekt­ma­nage­ment oder Re­chen­we­sen ge­ne­rie­ren.

Wie jede andere Office-Ap­pli­ka­ti­on besteht auch Excel aus ver­schie­de­nen Objekten, wie bei­spiels­wei­se Ar­beits­blät­tern, Zellen oder Tabellen. Die Methoden und Ei­gen­schaf­ten dieser Objekte sind entweder manuell oder bei Bedarf mit der VBA-Pro­gram­mie­rung steuerbar. Mithilfe des VBA-Editors, der in der Ap­pli­ka­ti­on in­te­griert ist, ge­ne­rie­ren Sie au­to­ma­ti­sier­te Hand­lun­gen. Dies ist gar nicht so kom­pli­ziert, denn die einzelnen Code-Bausteine sind bereits fest­ge­legt. Ihre Aufgabe ist es lediglich, die einzelnen Bausteine so zu­sam­men­zu­set­zen, dass eine per­so­na­li­sier­te Lösung entsteht. Solche Lösungen, auch Excel-Makros genannt, er­leich­tern unter anderem das Or­ga­ni­sie­ren, For­ma­tie­ren oder Im­por­tie­ren von Daten.

Excel VBA öffnen: So geht’s

Bevor Sie mit der VBA-Pro­gram­mie­rung starten können, müssen Sie Excel VBA öffnen. Hierzu können Sie einfach die Tas­ten­kom­bi­na­ti­on [Alt] + [F11] nutzen. Der Editor öffnet sich dann au­to­ma­tisch.

Eine al­ter­na­ti­ve Mög­lich­keit bietet Ihnen die Excel-Me­nü­leis­te. Klicken Sie im Reiter „Ent­wick­ler­tools“ auf „Visual Basic“, um Excel VBA zu öffnen. Es kann sein, dass Ihnen die Ent­wick­ler­tools nicht angezeigt werden. Ist dies der Fall, können Sie über „Datei“ > „Optionen“ > „Menüband anpassen“ Re­gis­ter­kar­ten zu Ihrer Menüleise hin­zu­fü­gen. Wählen Sie unter „Haupt­re­gis­ter­kar­ten“ den Punkt „Ent­wick­ler­tools“.

Bild: Excel: Entwicklertools hinzufügen
Wählen Sie über das Menüband und die Haupt­re­gis­ter­kar­ten die Option „Ent­wick­ler­tools“.
Hinweis

Die hier gezeigte Anleitung funk­tio­niert für Excel-Versionen ab Office 2016 sowie für Microsoft 365.

Excel VBA: Tutorial für den Einstieg

Bevor Sie ein neues Programm in Excel mit Visual Basic erstellen, benötigen Sie zunächst ein Grund­ge­rüst. Dieses füllen Sie dann mit den Code-Bau­stei­nen.

Schritt 1: Nachdem sich der VBA-Editor geöffnet hat, klicken Sie auf „Einfügen“ > „Modul“, um ein neues Modul ein­zu­fü­gen.

Bild: Excel: VBA-Modul einfügen
Klicken Sie auf Visual Basic und dann auf Einfügen und Modul.

Schritt 2: Tragen Sie in das Ein­ga­be­feld nun „Option Explicit“ und „Option Base 1“ ein. Dies er­mög­licht die Eingabe der Prozedur-Typen Subs und Functions. Subs sind Programme, die nur aus Befehlen bestehen. Hier gibt es keinen Rück­ga­be­wert. Rück­ga­be­wer­te erhalten Sie bei der Eingabe von Functions, die sich aus diesem Grund für ma­the­ma­ti­sche Rech­nun­gen eignen. Die Antworten des Programms werden hier in Form von Dialog-Fenstern angezeigt.

Bild: Excel: VBA-Eingabefeld
Geben Sie Option Explicit und Option Base 1 in das Ein­ga­be­feld ein.

Variablen verwenden

In Excel Visual Basic erfüllen Variablen dieselbe Funktion wie in ma­the­ma­ti­schen Glei­chun­gen. Sie dienen jedoch nicht nur als Platz­hal­ter für Werte, sondern auch als Platz­hal­ter für Zei­chen­fol­gen oder Objekte. Der Einsatz von Variablen lohnt sich immer dann, wenn Elemente mehr als nur einmal an­ge­spro­chen werden. Im VBA-Code müssen Sie eine Variable als Datentyp de­kla­rie­ren. Zur ex­pli­zi­ten De­kla­ra­ti­on verwenden Sie diese DIM-Anweisung: Dim [Variable] As [Datentyp].

Beispiel: Dim datBeginn As Date si­gna­li­siert VBA, dass eine Variable mit dem Namen „datBeginn“ vom Datentyp „Datum“ erzeugt werden soll.

Je nach Inhalt der Variablen müssen Sie in Excel VBA den richtigen Datentyp wählen. Hier ein Überblick über die am meisten ver­wen­de­ten Da­ten­ty­pen und ihre Typ­de­kla­ra­ti­ons­zei­chen:

  • Variant: Kann beliebige Daten enthalten: wie zum Beispiel nu­me­ri­sche Werte, Zei­chen­fol­gen, Zeit- oder Datums-Werte. Ein Variant wird auch au­to­ma­tisch angegeben, wenn man einen Datentyp nicht explizit de­kla­riert. Typ­de­kla­ra­ti­ons­zei­chen: Nicht definiert.
  • Integer: Wird für ganze Zahlen ein­ge­setzt, die einen Wert von -32.768 bis 32.767 haben. Typ­de­kla­ra­ti­ons­zei­chen: %()
  • Long: Wird für ganze Zahlen ein­ge­setzt, die im Bereich von -2.147.483.648 bis 2.147.483.647 liegen. Typ­de­kla­ra­ti­ons­zei­chen: (&)
  • Double: Um­schließt alle Fließ­kom­ma­zah­len von etwa plus/minus 1,79 10^308. Typ­de­kla­ra­ti­ons­zei­chen: (#)*
  • Boolean: Hierbei handelt es sich aus­schließ­lich um True- oder False-Variablen. Wird angezeigt als: True oder False oder #TRUE# oder #FALSE#
  • String: Bezieht sich auf Zei­chen­fol­gen mit variabler oder fester Länge. Typ­de­kla­ra­ti­ons­zei­chen: ($)
  • Date: Dient zur Uhrzeit- und Da­tums­an­ga­be. Es lassen sich Uhrzeiten von 00:00:00 Uhr (Mit­ter­nacht) bis 23:59:59.9999999 Uhr angeben. Das Format für das Datum ist M/T/JJJJ oder JJJJ-MM-TT.

Die gän­gigs­ten VBA-Befehle

Do…Loop-Anweisung

Do
Befehle
Loop [While/Until] Ausdruck

Mit der Do-Schleife führen Sie Befehle aus, die beliebig oft wie­der­holt werden sollen, bis eine bestimmte Bedingung erfüllt ist. Mit „While“ wird die Schleife wie­der­holt, bis der Ausdruck „False“ ist. Mit „Until“ wird eine Schleife wie­der­holt, bis der Ausdruck „True“ ist.

For…Next-Anweisung

For
Variable = [Startwert] To Step [Wert]
Befehl
Next Variable

Mit der For-Schleife werden An­wei­sun­gen so oft wie­der­holt, wie angegeben. Sie beginnt, wenn die Variable den Startwert erreicht hat, und erhöht sich um den fest­ge­leg­ten „Step“-Wert, bis der Endwert erreicht ist.

If…Then…Else-Anweisung

If [Ausdruck1] Then
Befehl1
Elseif [Ausdruck2] Then
Befehl2
Else
Befehl3
End if

Die If-Ent­schei­dung führt eine Reihe von An­wei­sun­gen aus, die von der Rich­tig­keit eines Ausdrucks abhängen. Stimmt im oben­ste­hen­den Code der Ausdruck1, wird der Befehl1 au­to­ma­tisch aus­ge­führt. Stimmt er nicht, wird geprüft, ob der Ausdruck2 korrekt ist. Ist dies der Fall, wird der Befehl2 aus­ge­führt. Sind beide Ausdrücke nicht korrekt, aktiviert dies Befehl3.

Tipp

Ein ef­fi­zi­en­tes Arbeiten mit Excel wird nicht nur durch VBA-Pro­gram­mie­rung er­leich­tert, sondern auch mit der Ver­wen­dung zeit­spa­ren­der Excel-Shortcuts.

VBA-Pro­gram­mie­rung: Prak­ti­sches Beispiel

Der beste Weg, Excel VBA zu lernen, ist das Üben anhand prak­ti­scher Beispiele. Im Folgenden kommt eine einfache If…Then…Else-Anweisung zum Einsatz:

Bild: Excel: VBA Beispiel
Excel-Tabelle mit Bei­spiel­wer­ten

Mithilfe eines Excel-Makro soll angezeigt werden, ob Kandidat 142 in A2 einen Test bestanden hat. Für das er­folg­rei­che Bestehen muss er min­des­tens 60 Punkte erreicht haben.

Bild: Excel: VBA-Funktion mit einem If-Else-Statement
Geben Sie den Code für den If-Test ein und klicken Sie auf den Play-Button.

Der oben­ste­hen­de VBA-Code If Range("b2").Value >= 60 Then Range("c2").Value = "Ja" legt die Bedingung fest, die den Sach­ver­halt in Zelle C2 mit „Ja“ be­ant­wor­ten würde. Klicken Sie nun auf den Play-Button und im nächsten Fenster auf „Ausführen“, wird die VBA-Pro­gram­mie­rung ab­ge­spielt und die Zelle C2 au­to­ma­tisch befüllt:

Bild: Excel: Makro ausführen
Führen Sie den If-Test im Dia­log­fens­ter Makros aus.
Bild: Automatische Antwort in C2
Nach Ausführen des Makros sehen Sie die au­to­ma­ti­sche Antwort in C2.

Dies ist ein sehr einfaches Beispiel und soll An­fän­ge­rin­nen und Anfängern einen ersten Eindruck von Visual Basic in Excel ver­mit­teln. Im Internet finden Sie viele weitere An­wen­dungs­bei­spie­le, mit denen Sie üben können.

HiDrive Cloud-Speicher
Ihr sicherer Online-Speicher
  • Daten zentral speichern, teilen und be­ar­bei­ten
  • Ser­ver­stand­ort Deutsch­land (ISO 27001-zer­ti­fi­ziert)
  • Höchste Da­ten­si­cher­heit im Einklang mit der DSGVO
Zum Hauptmenü