Excel-Makros für Einsteiger
Was Makros für Sie tun können
Ein Makro ist im Wesentlichen eine Aufzeichnung Ihrer Excel-Aktionen, die Sie jederzeit wiedergeben können. Wenn Sie ständig dieselbe Abfolge von Vorgängen wiederholen – diesen Bericht formatieren, jenen Datenexport bereinigen, dieses Diagramm erstellen – haben Sie einen Kandidaten für Automatisierung gefunden. Makros verwandeln wiederkehrende Aufgaben in Ein-Klick-Operationen und sparen jede Woche Stunden an Zeit.
Sie müssen kein Programmierer sein. Die Makroaufzeichnung von Excel erfasst Ihre Tastenanschläge und Mausklicks und übersetzt sie automatisch in VBA-Code (Visual Basic for Applications). Nach der Aufzeichnung führen Sie das Makro über eine Schaltfläche, eine Tastenkombination oder ein Arbeitsmappenereignis aus.
Schritt für Schritt: Zeichnen Sie Ihr erstes Makro auf
Szenario: Jeden Montag erhalten Sie einen unformatierten Verkaufsbericht, der dieselbe Formatierung benötigt: fette Überschriften, Währungsformat in der Umsatzspalte, automatische Spaltenbreite, oberste Zeile fixieren und eine Summenzeile hinzufügen. Automatisieren Sie das.
Schritt 1 – Die Registerkarte „Entwicklertools" aktivieren
- Klicken Sie mit der rechten Maustaste irgendwo auf das Menüband > Menüband anpassen.
- Aktivieren Sie im rechten Bereich das Kontrollkästchen Entwicklertools. Klicken Sie auf OK.
- Die Registerkarte „Entwicklertools" erscheint nun im Menüband – dies ist Ihre Makro-Kommandozentrale.
Schritt 2 – Planen und üben Sie vor der Aufzeichnung
- Die Makroaufzeichnung erfasst jeden Klick und Tastenanschlag – einschließlich Fehlern. Üben Sie Ihre genaue Abfolge zuerst ohne Aufzeichnung.
- Für die Formatierung eines Berichts könnte Ihre Abfolge sein: Alles auswählen (Strg+A), Überschriften fett (Strg+Umschalt+F), Umsatzspalte als Währung formatieren (Strg+Umschalt+$), Spaltenbreite automatisch anpassen (alles auswählen > Doppelklick auf Spaltentrennlinie), oberste Zeile fixieren (Ansicht > Fenster einfrieren > Oberste Zeile fixieren).
- Üben Sie jeden Vorgang. Verwenden Sie möglichst Tastenkombinationen – sie erzeugen saubereren VBA-Code als Mausklicks.
Schritt 3 – Das Makro aufzeichnen
- Entwicklertools > Makro aufzeichnen.
- Makroname:
FormatWeeklyReport(keine Leerzeichen, aussagekräftig). - Tastenkombination: Strg+Umschalt+R (verwenden Sie immer Strg+Umschalt, um integrierte Tastenkombinationen wie Strg+C nicht zu überschreiben).
- Makro speichern in: Persönliche Makroarbeitsmappe, wenn Sie es in allen Dateien verwenden möchten, oder Diese Arbeitsmappe, wenn es nur für diese Datei gilt.
- Beschreibung: „Fette Überschriften, Währungsformat Umsatz, Spaltenbreite automatisch anpassen, oberste Zeile fixieren, Summenzeile hinzufügen."
- Klicken Sie auf OK. Die Aufzeichnung beginnt – die Statusleiste zeigt eine Stopp-Schaltfläche an.
Schritt 4 – Führen Sie jede Formatierungsaktion sorgfältig aus
- Drücken Sie Strg+A, um alle Daten auszuwählen.
- Überschriften fett formatieren: Zeile 1 auswählen, Strg+Umschalt+F.
- Umsatzspalte formatieren: Spalte C auswählen, Strg+Umschalt+$ (Währungsformat).
- Spaltenbreite automatisch anpassen: Strg+A drücken, dann auf eine beliebige Spaltentrennlinie in der Kopfzeile doppelklicken.
- Oberste Zeile fixieren: Ansicht > Fenster einfrieren > Oberste Zeile fixieren.
- Summenzeile hinzufügen: Die letzte leere Zeile unter den Daten auswählen,
=SUMME(C2:C100)eingeben, fett und als Währung formatieren. - Klicken Sie auf Entwicklertools > Aufzeichnung beenden (oder klicken Sie auf die quadratische Stopp-Schaltfläche in der Statusleiste).
Schritt 5 – An einer frischen Kopie testen
- Erstellen Sie eine Kopie des Rohberichts der nächsten Woche (testen Sie Makros immer zuerst an Kopien – es gibt kein Rückgängig für Makros).
- Drücken Sie Strg+Umschalt+R (Ihre zugewiesene Tastenkombination).
- Beobachten Sie, wie Excel alle Formatierungsschritte in weniger als einer Sekunde ausführt. Ihre wöchentliche 5-Minuten-Aufgabe ist jetzt sofort erledigt.
- Wenn etwas schiefging: Entwicklertools > Makros > wählen Sie Ihr Makro aus > Bearbeiten, um den VBA-Code anzuzeigen und zu ändern.
Wichtige Techniken
Technik 1 – Relative Bezüge für flexible Makros verwenden
Standardmäßig zeichnen Makros absolute Zellbezüge auf (immer B2 auswählen). Für Makros, die von jeder Cursorposition aus funktionieren sollen:
- Entwicklertools > Relative Bezüge verwenden (schalten Sie dies vor der Aufzeichnung EIN).
- Wenn Sie jetzt „3 Zellen nach unten gehen und SUMME eingeben", wiederholt das Makro diese relative Bewegung unabhängig von der Startzelle – ideal für Makros, die an verschiedenen Positionen angewendet werden.
Technik 2 – Eine Schaltfläche zum Arbeitsblatt hinzufügen
- Entwicklertools > Einfügen > Schaltfläche (Formularsteuerelement). Zeichnen Sie ein Rechteck auf Ihrem Blatt.
- Der Dialog „Makro zuweisen" erscheint – wählen Sie Ihr Makro aus und klicken Sie auf OK.
- Klicken Sie mit der rechten Maustaste auf die Schaltfläche > Text bearbeiten, um sie mit „Bericht formatieren" zu beschriften.
- Schaltflächen machen Makros für jeden sichtbar, der die Arbeitsmappe öffnet – niemand muss sich Tastenkombinationen merken.
Häufige Fehler
- Unnötige Aktionen aufzeichnen. Die Aufzeichnung erfasst Scrollen, versehentliche Zellauswahlen und unbeabsichtigte Formatierungsänderungen. Überprüfen Sie den aufgezeichneten Code (Alt+F11) und entfernen Sie bedeutungslose Zeilen.
- Bildschirmaktualisierung nicht deaktivieren. Dem Makro beim Flackern durch jede Zellauswahl zuzusehen, ist langsam und ablenkend. Fügen Sie am Anfang
Application.ScreenUpdating = Falseund am EndeApplication.ScreenUpdating = Truehinzu, um eine 5-10-fache Geschwindigkeitssteigerung zu erreichen. - Makrosicherheit blockiert Ihre Arbeit. Excel blockiert standardmäßig Makros aus nicht vertrauenswürdigen Quellen. Speichern Sie makrofähige Arbeitsmappen als .xlsm. Weisen Sie Empfänger beim Teilen darauf hin, dass sie bei der Sicherheitswarnung „Inhalte aktivieren" klicken sollen.
- Kein Rückgängig verfügbar. Makros löschen den Rückgängig-Verlauf. Testen Sie immer zuerst an einer Datenkopie.
Fortgeschrittene Tipps
- Aufgezeichneten Code effizienter gestalten: Aufgezeichnete Makros verwenden häufig
SelectundActivate(langsam). Bearbeiten Sie den Code für direkte Objektmanipulation: Ändern SieRange("A1").Select: Selection.CopyzuRange("A1").Copy Destination:=Range("B1"). - Arbeitsmappenereignisse für automatische Auslösung: Verwenden Sie
Workbook_Open(), um ein Makro beim Öffnen einer Datei auszuführen, oderWorksheet_Change(), um auf Zelländerungen zu reagieren. Dadurch entfällt die manuelle Makroausführung vollständig. - Benutzerdefinierte Funktionen mit VBA: Schreiben Sie eine VBA-Funktion wie
Function Provision(Umsatz) As Double: Provision = Umsatz * 0,1: End Functionund verwenden Sie sie dann in Tabellen als=Provision(A2). Erweitern Sie die Excel-Formelbibliothek um Ihre Geschäftslogik.