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
Danach erscheint der Punkt Entwicklertools in der Menüleiste in Excel:
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:
Danach kannst du dem Makro einen beliebigen Namen geben:
Wenn du fertig bist mit deinen Schritten (z.B. Diagramm einfügen, Daten kopieren, Pivot-Tabelle verändern), klicke auf Aufzeichnung beenden.
Danach sind deine Schritte aufgezeichnet worden.
Ich habe hier einfach in Zelle B3 das Wort Hallo eingetragen.
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.
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.
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):
Danach erscheint der Excel VBA-Editor.
Öffne dort bitte Modul1, und schon erscheint dein automatisch erzeugter Programmiercode:
Erinnerst du dich? Ich hatte in Zelle B3 das Wort Hallo eingetragen.
Der Makro-Rekorder hat daraus diese Code-Zeilen in VBA fabriziert:
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:
Wie du es von Excel gewöhnt bist, kannst du auch einen Text einfügen:
Jetzt kannst du mit der rechten Maustaste auf dieses Rechteck drücken, und im Kontextmenü erscheint 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.
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
Danach kannst du mit der Maus (so ähnlich wie bei PowerPoint zum Beispiel) so einen Button in das Excel Arbeitsblatt ziehen:
Doppelklicke auf den Button, danach erscheinen zwei Zeilen 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.
Danach musst du den Code-Editor wieder schließen und den Entwurfsmodus verlassen, indem du in Excel auf Entwicklertools -> Entwurfsmodus klickst.
Nachdem du den Entwurfsmodus verlassen hast, ist dein Button anklickbar. Jedes Mal, wenn du darauf drückst, wird das verknüpfte Makro ausgeführt:
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!
Hier kannst du alles lernen
Mit Excel zum beruflichen Erfolg: Sichere deine Karriere durch effizientes Arbeiten mit Excel. Hier kannst du die Fähigkeiten erlernen, die dich im Job voranbringen und deine Position stärken.
Mein Excel-Kurs auf Udemy stattet dich mit den Fähigkeiten aus, die du für deinen beruflichen Erfolg benötigst. Ich freue mich darauf, dich auf deinem Weg zu unterstützen und deine Fortschritte zu sehen!
Nur 👉 über diesen Link bekommst du den Kurs mit einem satten Rabatt von 85%!
Bis gleich im Kurs,
Dein Sebastian Glöckner