Excel VBA – Einfache Programmierung für Anfänger

Letztes Update: 10. April 2024

Excel ist ein leistungsstarkes Analyse-Werkzeug, das Menschen in allen möglichen Branchen nutzen, um ihre Zahlen im Griff zu haben. Eine Funktion, die viele Anwender nicht kennen (oder zumindest nicht beherrschen), sind Excel VBA Makros. Obwohl Programmierung eigentlich “nichts für Anfänger” ist, behaupte ich, dass diese Programmiersprache noch relativ leicht zu lernen ist.

Anschauen auf YouTube & Kanal abonnieren

Was sind Excel VBA Makros?

Mit Makros können Anwender eine Kombination häufig verwendeter Schrittfolgen aufzeichnen, sodass diese Schritte später wiederholt werden können. Die Programmiersprache in Microsoft Excel heißt VBA (Visual Basic for Applications). Übrigens wird VBA auch für Programmierung innerhalb von Word, Outlook und PowerPoint verwendet.

Das Gute daran ist, dass Excel Makros relativ einfach zu erstellen sind. Ein Anwender muss kein Programmier-Experte sein, um VBA-Programmierung zu erlernen.

Warum solltest du dir die Zeit nehmen, Excel VBA Makros zu erlernen?

Excel VBA Makros können viele Aufgaben ganz oder teilweise automatisieren, die ansonsten viel Zeit in Anspruch nehmen würden. Mit VBA kannst du Dinge automatisieren lassen, die du sonst mühsam per Hand erledigen würdest (z.B. Tabellenblätter zusammen kopieren, Daten aus anderen Dateien importieren, Standard-Reports erzeugen).

Mit etwas Geduld und Einsatz kannst du die Programmiersprache VBA relativ schnell lernen (Info: ich habe einen Onlinekurs zu VBA erstellt). Du musst langweilige und zeitfressende Aufgaben nur einmal programmieren, und sparst damit in Zukunft jedes Mal extrem viel Zeit.

Ich selbst nutze VBA schon seit 2010 (und konnte vorher kaum programmieren). Heute habe ich damit fast alle meine Aufgaben auf der Arbeit entweder ganz oder teilweise automatisiert.

Geht es auch ohne Programmierung?

Kurze Antwort: Ja. Der sogenannte Makro-Rekorder in Excel ist hier eine extreme Hilfe. Mit diesem Tool kannst du eigene Schritte (zum Beispiel Mausklicks, Diagramm-Erstellung, Kopiervorgänge) aufzeichnen und später automatisch von Excel wiedergeben lassen.

Dabei wird automatisch ein VBA Programmiercode erzeugt, den du sogar noch nach Bedarf verändern und anpassen kannst. Mehr dazu weiter unten.

Erste Schritte mit Excel VBA Makros

Als Erstes musst du in Excel die sogenannten Entwicklertools aktivieren.
Das geht so: Datei -> Optionen -> Menüband anpassen -> Haken setzen bei Entwicklertools

Excel Entwicklertools aktivieren
Zuerst musst du die Entwicklertools aktivieren.

Danach erscheint der Punkt Entwicklertools in der Menüleiste in Excel:

Excel Entwicklertools

Der Makro-Rekorder als Schnellstart

Am besten beginnst du, indem du ein Makro mit dem Makro-Rekorder aufzeichnest. Dieses Programm ermöglicht es dir, einzelne Schritte, die du manuell in Excel durchführen würdest, aufzuzeichnen und diese Aufzeichnung später als Makro wiederholen zu lassen.

Damit hast du eine einfache und schnelle Möglichkeit, ein Gespür für die Programmiersprache zu bekommen. Wenn du einmal das Grundgerüst eines Makros hast, kannst du die Syntax und die logischen Konzepte von VBA erforschen.

Klicke dazu einfach auf Makro aufzeichnen:

Makro aufzeichnen in Excel

Danach kannst du dem Makro einen beliebigen Namen geben:

Makro benennen

Wenn du fertig bist mit deinen Schritten (z.B. Diagramm einfügen, Daten kopieren, Pivot-Tabelle verändern), klicke auf Aufzeichnung beenden.

Makro Aufzeichnung beenden

Danach sind deine Schritte aufgezeichnet worden.

Ich habe hier einfach in Zelle B3 das Wort Hallo eingetragen.

Hallo in Zelle B3.
Ich habe das Wort Hallo eingetippt und dies aufgezeichnet.

Wie kann ich das automatisch erzeugte Makro starten?

Klicke auf den großen Button mit dem Text Makros (oder drücke Alt + F8). Im Kontextmenü unten steht dort übrigens Makros anzeigen.

Makros anzeigen

Danach erscheint eine Liste deiner aufgezeichneten Makros, und du kannst rechts auf Ausführen klicken. Wenn du das tust, werden deine aufgezeichneten Schritte automatisch wiederholt.

Gespeicherte Makros in Excel

Richtig spannend wird es allerdings erst, wenn du die aufgezeichneten VBA Makros modifizierst, das heißt nach belieben abänderst. Beispielsweise könntest du den Namen einer Tabelle, aus der du Daten ziehst, später automatisch ändern lassen.

Wo kann ich mir den automatisch erzeugten Code ansehen?

Die automatisch erzeugten Makros sind eine tolle Hilfe für den Anfang. Ich selbst nutze sie übrigens auch gerne, wenn ich den Code für bestimmte Operationen (z.b. Pivot-Tabelle erstellen) nicht auswendig kenne.

Das Besondere ist jedoch, dass du den Code, den der Makro-Rekorder automatisch für dich erzeugt hat, später auf deine speziellen Bedürfnisse anpassen kannst. Klicke dazu auf Visual Basic (oder drücke Alt+F11):

Visual Basic Editor für Excel

Danach erscheint der Excel VBA-Editor.

Öffne dort bitte Modul1, und schon erscheint dein automatisch erzeugter Programmiercode:

Der VBA Editor in Excel

Erinnerst du dich? Ich hatte in Zelle B3 das Wort Hallo eingetragen.

Der Makro-Rekorder hat daraus diese Code-Zeilen in VBA fabriziert:

VBA Code
VBA Code

Meistens ist der vom Makro-Rekorder erstellte Code nicht optimal (bezüglich Performance oder Programmierstil), aber meistens ist er eine gute Hilfe beim Programmieren. Und als Experte oder Expertin kannst du den VBA Code später immer noch verbessern, falls dir etwas nicht gefällt.

Später kannst du selbst eigenen VBA Code eingeben

Wenn du später etwas mehr Erfahrung mit Excel VBA Programmierung hast, wirst du bald damit anfangen, direkt eigenen Code in das Code-Fenster einzutippen. Das erfordert nur etwas Eingewöhnung.

Die Programmiersprache Visual Basic for Applications ist eine vergleichsweise leicht zu lernende Sprache und nicht zu vergleichen mit komplexen Sprachen wie z.B. C++ oder Java, die hauptsächlich mit Klassen und Objekten arbeiten.

In VBA schreibt man den Code einfach “von oben nach unten” und kann sogar live jede einzelne Zeile im sogenannten Debugger testen. Dadurch kannst du Denkfehler sehr schnell ausfindig machen und korrigieren.

Wie startet man Excel VBA Makros?

Makros manuell starten

Die erste Möglichkeit hast du oben bereits gelesen (Alt+F8 -> Makro auswählen -> Ausführen). Klicke hier, um den Abschnitt noch einmal zu lesen.

Makros mit Button aufrufen

Die “übliche Art”, Makros in Excel aufzurufen, ist sicherlich die Verknüpfung mit einem Button (also einem Knopf). Und das geht so:

Anfänger-Variante: Makro mit Form verknüpfen

Alle blutigen Anfänger (ich auch) haben mit Sicherheit so angefangen, weil es so schön einfach ist und schnell geht. Und zwar so: Füge mit Einfügen -> Illustrationen -> Formen -> Rechteck eine Form in dein Excel ein, die wie ein Button aussieht:

Ein Rechteck einfügen

Wie du es von Excel gewöhnt bist, kannst du auch einen Text einfügen:

Rechteck mit Text

Jetzt kannst du mit der rechten Maustaste auf dieses Rechteck drücken, und im Kontextmenü erscheint Makro zuweisen.

Makro zuweisen

Danach musst du nur noch dein Makro auswählen (in diesem Beispiel nehme ich Makro1, das oben automatisch aufgezeichnet wurde), und auf OK drücken.

Dadurch wird dein Rechteck in einen Button verwandelt. Immer, wenn du darauf klickst, wird das Makro sofort ausgeführt.

Rechteck als Button

Diese Art, Makros zu verknüpfen, ist verführerisch einfach und macht am Anfang sehr viel Spaß. Trotzdem empfehle ich dir die professionelle Variante, da die “richtigen Buttons” besser aussehen, besser kontrollierbar sind und mehr Funktionen bieten:

Professionelle Variante: Befehlsschaltfläche

Diese folgende Variante ist besser, weil du damit “richtige” Buttons bekommst inkl. 3D-Effekten, Animationen und vielen Profi-Funktionen, die du vielleicht irgendwann einmal brauchen wirst. Also gewöhne dir am besten direkt an, “richtige Buttons” zu verwenden. Du musst nur eine Zeile Code eintippen, aber daran wirst du dich sehr schnell gewöhnen. Und so geht es:

Klicke auf Entwicklertools -> Einfügen -> Formularsteuerelemente -> ActiveX-Steuerelemente und wähle das erste Element oben links aus: Befehlsschaltfläche

ActiveX-Steuerelemente
ActiveX-Steuerelemente -> Befehlsschaltfläche

Danach kannst du mit der Maus (so ähnlich wie bei PowerPoint zum Beispiel) so einen Button in das Excel Arbeitsblatt ziehen:

CommandButton in Excel

Doppelklicke auf den Button, danach erscheinen zwei Zeilen Code:

Leerer VBA Code

Dort tippst du in die Mitte einfach ein

Call Makro1

Wenn du dich erinnerst, Makro1 war der Name des aufgezeichneten Makros von oben. Mit dem Befehl Call Makro1 sagst du Excel lediglich, dass dieses Makro gestartet werden soll.

Call Makro 1

Danach musst du den Code-Editor wieder schließen und den Entwurfsmodus verlassen, indem du in Excel auf Entwicklertools -> Entwurfsmodus klickst.

Entwurfsmodus
Klicke auf Entwurfsmodus, damit du dein Makro starten kannst.

Nachdem du den Entwurfsmodus verlassen hast, ist dein Button anklickbar. Jedes Mal, wenn du darauf drückst, wird das verknüpfte Makro ausgeführt:

CommandButton anklickbar.
Jetzt ist der Button nutzbar, und das Makro wird ausgeführt, sobald du darauf drückst.

Makros automatisch starten

Eine Profi-Funktion ist es Makros automatisch im Hintergrund ausführen zu lassen bei bestimmten Ereignissen. Beispiele dafür sind:

  • Sobald eine neue Zelle ausgewählt wird
  • Immer beim Abspeichern
  • Automatisch beim Öffnen der Datei

Diese professionelle Art kannst du lernen in meinem Onlinekurs mit dem Titel Excel VBA Advanced 2 – Weniger Fehler durch schlaue Abläufe.

Diese automatische Ausführung von Makros ist manchmal sehr nützlich, zum Beispiel wenn du beim Öffnen der Datei automatisch Pivot-Tabellen aktualisieren willst oder beim Abspeichern bestimmte Formate festlegen willst. Du kannst damit auch beispielsweise Passwortabfragen realisisieren.

Fazit

VBA Makros sind ein wichtiger Bestandteil von Excel, mit dem du wiederkehrende Aufgaben automatisieren kannst. Mit VBA-Makros in Excel kannst du komplexer Prozesse erstellen und automatisieren. Die Hauptgründe, weshalb ich Makros schreibe, sind:

  • Ich spare damit extrem viel Zeit. Das Programm muss nur einmal geschrieben werden und kann immer wieder ausgeführt werden. Einige meiner Programme verwende ich seit 2010.
  • Ich mache weniger Fehler. Durch das Automatisieren läuft alles meist fehlerfrei und reibungslos ab. Wenn man die selbe Aufgabe manuell erledigt, neigt man eher zu Flüchtigkeitsfehlern.
  • Meine Arbeitsabläufe sind standardisiert und dokumentiert. Es versteht sich von selbst, dass ein Programmablauf, bei dem ich nur ein paar Knöpfe drücken muss, vernünftiger ist als die manuelle Arbeit. So kann ich mich auch Monate oder Jahre später schnell wieder einfinden.

Wenn du die VBA Programmierung auch lernen möchtest, kann ich dir meinen VBA-Onlinekurs auf meiner Lernplattform Expertenskills ans Herz legen.

Danke fürs Lesen und bis bald!
Dein Sebastian Glöckner

Für alle, die ihre Fähigkeiten auf das nächste Level heben wollen, bieten meine Onlinekurse dir eine Schatzkiste voller Wissen. Wenn du glaubst, dass du schon alles gesehen und gelernt hast, warte ab, bis du unsere Ressourcen erkundet hast. Auf unserer Plattform kannst du noch erheblich mehr lernen, dich weiterentwickeln und deine Expertise in verschiedenen Bereichen ausbauen. Tauche ein in eine Welt des Lernens, die darauf wartet, von dir entdeckt zu werden – deine Reise zum Expertenstatus beginnt hier!

Deine Excel Online Schulung

Expertenskills Lernplattform

Mit Excel zum beruflichen Erfolg: Sichere deine Karriere und Zukunft durch effizientes Arbeiten mit Excel. Erlerne Fähigkeiten, die dich im Job voranbringen und deine Position stärken

Egal, ob du schon viel Erfahrung hast oder gerade erst anfängst – die Kurse bieten dir die Möglichkeit, deine Fähigkeiten auf ein ganz neues Level zu heben. Erweitere deine Expertise in verschiedenen Bereichen und entwickle dich weiter.

Auf der Lernplattform findest du alles, was du brauchst, um in deiner Karriere den nächsten großen Schritt zu machen. Sei gespannt, was du alles erreichen kannst – ich freue mich darauf, dich auf deiner Lernreise zu begleiten!


Tags

Makros, Programmierung, VBA


Vielleicht gefällt dir auch...

Gratis Download - Digitales Buch: 13 Excel-Formeln, ohne die du nicht überleben kannst - jetzt herunterladen!