Excel VBA-Makro-Tutorial für Anfänger mit Beispielen

  • Teile Das
Michael Brown

Hier erfahren Sie, wie Sie ein Makro aufzeichnen und VBA-Code in Excel einfügen, Makros von einer Arbeitsmappe in eine andere kopieren, aktivieren und deaktivieren, den Code anzeigen, Änderungen vornehmen und vieles mehr.

Für Excel-Neulinge scheint das Konzept der Makros oft unüberwindbar zu sein. In der Tat kann es Monate oder sogar Jahre dauern, bis man VBA beherrscht. Das bedeutet jedoch nicht, dass Sie die Automatisierungsmöglichkeiten von Excel-Makros nicht sofort nutzen können. Selbst wenn Sie ein völliger Neuling in der VBA-Programmierung sind, können Sie problemlos ein Makro aufzeichnen, um einige Ihrer sich wiederholenden Aufgaben zu automatisieren.

Dieser Artikel ist Ihr Einstieg in die faszinierende Welt der Excel-Makros. Er behandelt die wesentlichen Grundlagen, die Sie für den Einstieg benötigen, und enthält Links zu den entsprechenden ausführlichen Tutorials.

    Was sind Makros in Excel?

    Bei einem Excel-Makro handelt es sich um eine Reihe von Befehlen oder Anweisungen, die in Form von VBA-Code in einer Arbeitsmappe gespeichert sind. Man kann es sich als kleines Programm vorstellen, das eine vordefinierte Abfolge von Aktionen ausführt. Einmal erstellte Makros können jederzeit wiederverwendet werden. Wenn Sie ein Makro ausführen, werden die darin enthaltenen Befehle ausgeführt.

    In der Regel werden Makros verwendet, um sich wiederholende Aufgaben und tägliche Routinen zu automatisieren. Erfahrene VBA-Entwickler können wirklich ausgefeilte Makros schreiben, die weit über die Verringerung der Anzahl der Tastenanschläge hinausgehen.

    Oft hört man, dass ein Makro als "VBA" bezeichnet wird. Technisch gesehen gibt es einen Unterschied: Ein Makro ist ein Stück Code, während Visual Basic for Applications (VBA) die Programmiersprache ist, die von Microsoft zum Schreiben von Makros entwickelt wurde.

    Warum Excel-Makros verwenden?

    Der Hauptzweck von Makros besteht darin, mehr Arbeit in kürzerer Zeit zu erledigen. So wie Sie Formeln verwenden, um Zahlen zu berechnen und Textstrings zu manipulieren, können Sie Makros verwenden, um häufige Aufgaben automatisch auszuführen.

    Nehmen wir an, Sie sollen einen Wochenbericht für Ihren Vorgesetzten erstellen. Dazu importieren Sie verschiedene Analysedaten aus mehreren externen Quellen. Das Problem ist, dass diese Daten unübersichtlich, überflüssig oder nicht in einem Format sind, das Excel versteht. Das bedeutet, dass Sie Daten und Zahlen neu formatieren, zusätzliche Leerzeichen entfernen und Informationen in die entsprechenden Spalten kopieren und einfügen müssen,Sie können Diagramme erstellen, um Trends zu visualisieren, und vieles mehr, um Ihren Bericht übersichtlich und benutzerfreundlich zu gestalten. Stellen Sie sich vor, dass all diese Vorgänge mit nur einem Mausklick ausgeführt werden können!

    Natürlich kostet die Erstellung eines komplexen Makros Zeit, manchmal sogar mehr Zeit als die manuelle Ausführung der gleichen Vorgänge. Aber die Erstellung eines Makros ist eine einmalige Angelegenheit. Sobald der VBA-Code geschrieben, geprüft und getestet ist, erledigt er die Aufgabe schnell und fehlerfrei, wodurch menschliche Fehler und kostspielige Irrtümer minimiert werden.

    Wie man ein Makro in Excel erstellt

    Es gibt zwei Möglichkeiten, Makros in Excel zu erstellen - mit dem Makrorecorder und dem Visual Basic Editor.

    Tipp: In Excel werden die meisten Operationen mit Makros über die Schaltfläche Entwickler Daher sollten Sie die Registerkarte Entwickler zu Ihrem Excel-Ribbon hinzufügen.

    Aufzeichnung eines Makros

    Selbst wenn Sie keine Ahnung vom Programmieren im Allgemeinen und von VBA im Besonderen haben, können Sie einen Teil Ihrer Arbeit ganz einfach automatisieren, indem Sie Excel Ihre Aktionen als Makro aufzeichnen lassen. Während Sie die Schritte ausführen, beobachtet Excel Ihre Mausklicks und Tastenanschläge genau und schreibt sie in der VBA-Sprache auf.

    Der Makro-Recorder zeichnet fast alles auf, was Sie tun, und erstellt einen sehr detaillierten (oft redundanten) Code. Nachdem Sie die Aufzeichnung gestoppt und das Makro gespeichert haben, können Sie den Code im Visual Basic-Editor ansehen und kleine Änderungen vornehmen. Wenn Sie das Makro ausführen, greift Excel auf den aufgezeichneten VBA-Code zurück und führt genau dieselben Schritte aus.

    Um die Aufnahme zu starten, klicken Sie auf die Schaltfläche Makro aufzeichnen Taste entweder auf dem Entwickler oder die Registerkarte Status bar.

    Ausführliche Informationen finden Sie unter Aufzeichnung von Makros in Excel.

    Schreiben eines Makros im Visual Basic Editor

    Der Visual Basic for Applications (VBA)-Editor ist der Ort, an dem Microsoft Excel den Code aller Makros speichert, sowohl der aufgezeichneten als auch der manuell geschriebenen.

    Im VBA-Editor können Sie nicht nur eine Abfolge von Aktionen programmieren, sondern auch benutzerdefinierte Funktionen erstellen, eigene Dialogfelder anzeigen, verschiedene Bedingungen auswerten und vor allem die Logik kodieren! Natürlich erfordert die Erstellung eines eigenen Makros einige Kenntnisse über die Struktur und Syntax der VBA-Sprache, was den Rahmen dieses Tutorials für Anfänger sprengen würde. Aber es gibt nichts, was Sie nicht auch tun könnten.verhindern, dass Sie den Code von jemand anderem wiederverwenden (z. B. den, den Sie auf unserem Blog gefunden haben :) und selbst ein völliger Neuling in Excel VBA sollte damit keine Schwierigkeiten haben!

    Drücken Sie zunächst die Tastenkombination Alt + F11, um den Visual Basic-Editor zu öffnen, und fügen Sie dann den Code in diesen beiden Schritten ein:

    1. Klicken Sie im Projekt-Explorer auf der linken Seite mit der rechten Maustaste auf die Zielarbeitsmappe, und klicken Sie dann auf einfügen. > Modul .
    2. Fügen Sie den VBA-Code in das Code-Fenster auf der rechten Seite ein.

    Wenn Sie fertig sind, drücken Sie F5, um das Makro auszuführen.

    Die detaillierten Schritte finden Sie unter Einfügen von VBA-Code in Excel.

    Wie man Makros in Excel ausführt

    Es gibt mehrere Möglichkeiten, ein Makro in Excel zu starten:

    • Um ein Makro von einem Arbeitsblatt aus auszuführen, klicken Sie auf die Schaltfläche Makros auf der Schaltfläche Entwickler oder drücken Sie die Tastenkombination Alt + F8.
    • Um ein Makro im VBA-Editor auszuführen, drücken Sie entweder:
      • F5, um den gesamten Code auszuführen.
      • F8, um den Code Zeile für Zeile durchzugehen, was für Tests und die Fehlersuche sehr nützlich ist.

    Außerdem können Sie ein Makro starten, indem Sie auf eine benutzerdefinierte Schaltfläche klicken oder die zugewiesene Tastenkombination drücken. Ausführliche Informationen finden Sie unter Wie man Makros in Excel ausführt.

    So aktivieren Sie Makros in Excel

    Aus Sicherheitsgründen sind alle Makros in Excel standardmäßig deaktiviert. Um die Magie der VBA-Codes zu Ihrem Vorteil zu nutzen, müssen Sie also wissen, wie Sie sie aktivieren können.

    Der einfachste Weg, Makros für eine bestimmte Arbeitsmappe zu aktivieren, besteht darin, auf die Schaltfläche Inhalt freigeben in der gelben Sicherheitswarnleiste, die oben auf dem Blatt erscheint, wenn Sie eine Arbeitsmappe mit Makros zum ersten Mal öffnen.

    Weitere Informationen zur Makrosicherheit finden Sie unter Aktivieren und Deaktivieren von Makros in Excel.

    Makroeinstellungen ändern

    Microsoft Excel bestimmt, ob VBA-Codes in Ihren Arbeitsmappen ausgeführt werden dürfen oder nicht, und zwar auf der Grundlage der Makroeinstellung, die im Feld Trust Center .

    Im Folgenden werden die Schritte beschrieben, mit denen Sie auf die Excel-Makroeinstellungen zugreifen und sie bei Bedarf ändern können:

    1. Gehen Sie zum Datei und wählen Sie Optionen .
    2. Wählen Sie im linken Fensterbereich Trust Center und klicken Sie dann auf Trust Center Einstellungen... .
    3. In der Trust Center Dialogfenster, klicken Sie auf Makro-Einstellungen auf der linken Seite, wählen Sie die gewünschte Option und klicken Sie auf OK .

    In der folgenden Abbildung ist die Standardmakroeinstellung ausgewählt:

    Weitere Informationen finden Sie unter Excel-Makroeinstellungen erklärt.

    Wie man VBA-Codes in Excel anzeigt, bearbeitet und debuggt

    Alle Änderungen am Code eines Makros, unabhängig davon, ob es automatisch vom Excel-Makro-Recorder generiert oder von Ihnen geschrieben wurde, werden im Visual Basic-Editor vorgenommen.

    Um den VB-Editor zu öffnen, drücken Sie entweder Alt + F11 oder klicken Sie auf die Schaltfläche Visual Basic auf der Schaltfläche Entwickler tab.

    An ansehen und bearbeiten den Code eines bestimmten Makros, in der Projekt-Explorer auf der linken Seite, doppelklicken Sie auf das Modul, das es enthält, oder klicken Sie mit der rechten Maustaste auf das Modul und wählen Sie Code anzeigen Dies öffnet das Code-Fenster, in dem Sie den Code bearbeiten können.

    An Test und Fehlersuche ein Makro auszuführen, drücken Sie die Taste F8. Damit können Sie den Makrocode Zeile für Zeile durchgehen und sehen, wie sich jede Zeile auf Ihr Arbeitsblatt auswirkt. Die Zeile, die gerade ausgeführt wird, ist gelb markiert. Um den Debug-Modus zu verlassen, klicken Sie auf die Taste Zurücksetzen in der Symbolleiste (blaues Quadrat).

    Wie kopiere ich ein Makro in eine andere Arbeitsmappe?

    Sie haben ein Makro in einer Arbeitsmappe erstellt und möchten es nun auch in anderen Dateien wiederverwenden? Es gibt zwei Möglichkeiten, ein Makro in Excel zu kopieren:

    Kopieren Sie das Modul, das ein Makro enthält

    Befindet sich das Zielmakro in einem separaten Modul oder sind alle Makros des Moduls für Sie nützlich, dann ist es sinnvoll, das gesamte Modul von einer Arbeitsmappe in eine andere zu kopieren:

    1. Öffnen Sie beide Arbeitsmappen - diejenige, die das Makro enthält, und diejenige, in die Sie es kopieren möchten.
    2. Öffnen Sie den Visual Basic Editor.
    3. Suchen Sie im Projekt-Explorer das Modul, das das Makro enthält, und ziehen Sie es in die Zielarbeitsmappe.

    Im folgenden Screenshot kopieren wir Modul1 von Buch1 zu Buch2 :

    Kopieren des Quellcodes eines Makros

    Wenn das Modul viele verschiedene Makros enthält, Sie aber nur eines benötigen, dann kopieren Sie nur den Code dieses speziellen Makros. So geht's:

    1. Öffnen Sie beide Arbeitsmappen.
    2. Öffnen Sie den Visual Basic Editor.
    3. Doppelklicken Sie im Projekt-Explorer-Fenster auf das Modul, das das zu kopierende Makro enthält, um dessen Codefenster zu öffnen.
    4. Suchen Sie im Code-Fenster das Zielmakro, wählen Sie seinen Code (beginnend mit Unter und endet mit End Sub ) und drücken Sie Strg + C, um sie zu kopieren.
    5. Suchen Sie im Projekt-Explorer die Ziel-Arbeitsmappe, und fügen Sie dort entweder ein neues Modul ein (klicken Sie mit der rechten Maustaste auf die Arbeitsmappe und dann auf einfügen. > Modul ) oder doppelklicken Sie auf ein vorhandenes Modul, um dessen Codefenster zu öffnen.
    6. Drücken Sie im Codefenster des Zielmoduls die Tastenkombination Strg + V, um den Code einzufügen. Wenn das Modul bereits Code enthält, blättern Sie bis zur letzten Codezeile und fügen Sie das kopierte Makro ein.

    So löschen Sie Makros in Excel

    Wenn Sie einen bestimmten VBA-Code nicht mehr benötigen, können Sie ihn mit dem Befehl Makro Dialogfeld oder den Visual Basic-Editor.

    Löschen eines Makros aus einer Arbeitsmappe

    Um ein Makro direkt aus Ihrer Excel-Arbeitsmappe zu löschen, führen Sie die folgenden Schritte aus:

    1. Auf der Entwickler auf der Registerkarte Code Gruppe, klicken Sie auf die Makros Taste oder drücken Sie die Tastenkombination Alt + F8.
    2. In der Makro wählen Sie das Makro, das Sie entfernen möchten, und klicken Sie auf Löschen .

    Tipps:

    • Um alle Makros in allen geöffneten Dateien anzuzeigen, wählen Sie Alle offenen Arbeitsmappen von der Makros in Dropdown-Liste.
    • Um ein Makro in der Persönlichen Makro-Arbeitsmappe löschen zu können, müssen Sie zunächst die Datei Personal.xlsb einblenden.

    Löschen eines Makros über den Visual Basic Editor

    Ein Vorteil der Verwendung des VBA-Editors ist, dass Sie ein ganzes Modul mit allen darin enthaltenen Makros auf einmal löschen können. Außerdem ermöglicht der VBA-Editor das Löschen von Makros in der Persönlichen Makro-Arbeitsmappe, ohne diese auszublenden.

    Dauerhaft ein Modul löschen führen Sie die folgenden Schritte aus:

    1. In der Projekt-Explorer klicken Sie mit der rechten Maustaste auf das Modul und wählen Sie entfernen aus dem Kontextmenü.
    2. Wenn Sie gefragt werden, ob Sie das Modul exportieren möchten, bevor Sie es entfernen, klicken Sie auf Nein .

    An ein bestimmtes Makro entfernen löschen Sie einfach den Quellcode direkt im Codefenster oder Sie löschen ein Makro mit der Funktion Werkzeuge Menü des VBA-Editors:

    1. Von der Werkzeuge Menü, wählen Sie Makros . die Makros erscheint ein Dialogfeld.
    2. In der Makros Unter Wählen Sie in der Dropdown-Liste das Projekt aus, das das unerwünschte Makro enthält.
    3. In der Makro Name wählen Sie das Makro aus.
    4. Klicken Sie auf die Löschen Taste.

    Wie man Makros in Excel speichert

    Um ein in Excel aufgezeichnetes oder manuell geschriebenes Makro zu speichern, speichern Sie die Arbeitsmappe einfach als Makro (*.xlms). So geht's:

    1. Klicken Sie in der Datei, die das Makro enthält, auf die Schaltfläche Speichern Sie oder drücken Sie die Tastenkombination Strg + S .
    2. Die Speichern unter Wählen Sie im daraufhin erscheinenden Dialogfeld Excel Makro-aktivierte Arbeitsmappe (*.xlsm) von der Speichern als Typ Dropdown-Liste und klicken Sie auf Speichern Sie :

    Wie exportiert und importiert man Makros in Excel?

    Wenn Sie Ihre VBA-Codes an jemanden weitergeben oder auf einen anderen Computer übertragen möchten, exportieren Sie am schnellsten das gesamte Modul als .bas-Datei.

    Makros exportieren

    Um Ihre VBA-Codes zu exportieren, müssen Sie wie folgt vorgehen:

    1. Öffnen Sie die Arbeitsmappe, die die Makros enthält.
    2. Drücken Sie Alt + F11, um den Visual Basic Editor zu öffnen.
    3. Klicken Sie im Projekt-Explorer mit der rechten Maustaste auf das Modul, das die Makros enthält, und wählen Sie Datei exportieren .
    4. Navigieren Sie zu dem Ordner, in dem Sie die exportierte Datei speichern möchten, benennen Sie die Datei, und klicken Sie auf Speichern Sie .

    Makros importieren

    Um eine .bas-Datei mit VBA-Codes in Ihr Excel zu importieren, gehen Sie bitte wie folgt vor:

    1. Öffnen Sie die Arbeitsmappe, in die Sie Makros importieren möchten.
    2. Öffnen Sie den Visual Basic Editor.
    3. Klicken Sie im Projekt-Explorer mit der rechten Maustaste auf den Projektnamen und wählen Sie Datei importieren .
    4. Navigieren Sie zu der .bas-Datei und klicken Sie auf Öffnen Sie .

    Excel-Makro-Beispiele

    Eine der besten Möglichkeiten, Excel VBA zu erlernen, ist die Untersuchung von Codebeispielen. Im Folgenden finden Sie Beispiele für sehr einfache VBA-Codes, die einige grundlegende Operationen automatisieren. Natürlich können Sie mit diesen Beispielen nicht das Programmieren erlernen, dafür gibt es Hunderte von professionellen VBA-Tutorials. Wir möchten lediglich einige allgemeine Funktionen von VBA veranschaulichen, die Ihnen hoffentlich die Philosophie von VBA etwas vertrauter machenSie.

    Alle Blätter in einer Arbeitsmappe einblenden

    In diesem Beispiel verwenden wir die ActiveWorkbook Objekt, um die derzeit aktive Arbeitsmappe und die Für jeden Schleife, um alle Blätter in der Arbeitsmappe nacheinander durchzugehen. Für jedes gefundene Blatt setzen wir die Sichtbar Eigenschaft zu xlSheetVisible .

    Sub Unhide_All_Sheets() Dim wks As Worksheet For Each wks In ActiveWorkbook.Worksheets wks.Visible = xlSheetVisible Next wks End Sub

    Aktives Arbeitsblatt ausblenden oder sehr versteckt machen

    Um das aktuell aktive Blatt zu bearbeiten, verwenden Sie die ActiveSheet Dieses Beispielmakro ändert das Objekt Sichtbar Eigenschaft des aktiven Blattes auf xlSheetHidden Um das Blatt ganz auszublenden, setzen Sie den Parameter Sichtbar Eigenschaft zu xlSheetVeryHidden .

    Sub Hide_Active_Sheet() ActiveSheet.Visible = xlSheetHidden End Sub

    Alle zusammengefassten Zellen im ausgewählten Bereich aufheben

    Wenn Sie bestimmte Operationen auf einem Bereich und nicht auf dem gesamten Arbeitsblatt durchführen möchten, verwenden Sie die Auswahl Der folgende Code hebt zum Beispiel alle zusammengeführten Zellen in einem ausgewählten Bereich auf einen Schlag auf.

    Sub Unmerge_Cells() Selection.Cells.UnMerge End Sub

    Ein Nachrichtenfeld anzeigen

    Um Ihren Benutzern eine Nachricht zu zeigen, verwenden Sie die MsgBox Hier ist ein Beispiel für ein solches Makro in seiner einfachsten Form:

    Sub Show_Message() MsgBox ( "Hallo Welt!" ) End Sub

    In realen Makros wird ein Meldungsfeld in der Regel zu Informations- oder Bestätigungszwecken verwendet. Bevor Sie beispielsweise eine Aktion durchführen (in unserem Fall das Entfernen von Zellen), zeigen Sie eine Ja/Nein Wenn der Benutzer auf "Ja" klickt, werden die markierten Zellen wieder ausgeblendet.

    Sub Unmerge_Selected_Cells() Dim Answer As String Answer = MsgBox( "Sind Sie sicher, dass Sie diese Zellen wieder zusammenführen wollen?" , vbQuestion + vbYesNo, "Unmerge Cells" ) If Answer = vbYes Then Selection.Cells.UnMerge End If End Sub

    Um den Code zu testen, wählen Sie einen oder mehrere Bereiche aus, die zusammengeführte Zellen enthalten, und führen Sie das Makro aus. Die folgende Meldung wird angezeigt:

    Nachfolgend finden Sie Links zu komplexeren Makros, die anspruchsvolle und zeitaufwändige Aufgaben automatisieren:

    • Makro zum Kopieren von Blättern aus mehreren Arbeitsmappen in eine einzige
    • Makros zum Duplizieren von Blättern in Excel
    • Makros zum Alphabetisieren von Registerkarten in Excel
    • Makro zum Aufheben des Blattschutzes ohne Passwort
    • Makro zum Zählen und Summieren bedingt gefärbter Zellen
    • Makro zur Umwandlung von Zahlen in Wörter
    • Makro zum Ausblenden aller Arbeitsblätter außer dem aktiven Blatt
    • Makros zum Einblenden von Blättern
    • Makro, um alle Spalten einzublenden
    • Makros, um Blätter sehr versteckt zu machen
    • Makro zum Entfernen aller Zeilenumbrüche in einem aktiven Blatt
    • Makros zum Löschen leerer Zeilen
    • Makro zum Löschen jeder zweiten Zeile
    • Makro zum Entfernen leerer Spalten
    • Makro zum Einfügen jeder zweiten Spalte
    • Makros zur Rechtschreibprüfung in Excel
    • Makro zum Transponieren von Spalten in Zeilen
    • Makro zum Spiegeln von Spalten in Excel
    • Makros zum Einstellen des Druckbereichs
    • Makros zum Einfügen von Seitenumbrüchen

    Wie man Excel-Makros schützt

    Wenn Sie verhindern möchten, dass Ihr Makro von anderen eingesehen, geändert oder ausgeführt wird, können Sie es mit einem Passwort schützen.

    Makro zur Ansicht sperren

    Um Ihre VBA-Codes vor unbefugter Einsichtnahme und Bearbeitung zu schützen, gehen Sie wie folgt vor:

    1. Öffnen Sie den VBA-Editor.
    2. Klicken Sie im Projekt-Explorer mit der rechten Maustaste auf das Projekt, das Sie sperren möchten, und wählen Sie VBAProject Eigenschaften...
    3. In der Projekt-Eigenschaften Dialogfenster, auf der Seite Schutz überprüfen Sie die Registerkarte Projekt zur Ansicht sperren ein, geben Sie das Passwort zweimal ein und klicken Sie auf OK .
    4. Speichern, schließen und öffnen Sie Ihre Excel-Datei erneut.

    Wenn Sie versuchen, den Code im Visual Basic-Editor anzuzeigen, wird das folgende Dialogfeld angezeigt. Geben Sie das Kennwort ein und klicken Sie auf OK.

    An Makros freischalten öffnen Sie einfach die Projekt-Eigenschaften und entfernen Sie das Häkchen bei der Option Projekt zur Ansicht sperren Box.

    Hinweis: Diese Methode schützt den Code vor der Anzeige und Bearbeitung, verhindert aber nicht seine Ausführung.

    Makro vor der Ausführung durch Passwort schützen

    Um Ihr Makro vor der Ausführung zu schützen, so dass es nur von Benutzern ausgeführt werden kann, die das Kennwort kennen, fügen Sie den folgenden Code ein, wobei Sie das Wort "Kennwort" durch Ihr echtes Kennwort ersetzen:

    Sub Password_Protect() Dim password As Variant password = Application.InputBox( "Bitte Passwort eingeben" , "Passwortgeschütztes Makro" ) Select Case password Case Is = False 'nichts tun Case Is = "password" 'Ihr Code hier Case Else MsgBox "Falsches Passwort" End Select End Sub

    Das Makro verwendet die Eingabefeld um den Benutzer aufzufordern, ein Passwort einzugeben:

    Stimmt die Eingabe des Benutzers mit dem hartcodierten Kennwort überein, wird Ihr Code ausgeführt. Stimmt das Kennwort nicht überein, wird das Meldungsfeld "Falsches Kennwort" angezeigt. Um zu verhindern, dass der Benutzer das Kennwort im Visual Basic-Editor ausspäht, müssen Sie das Makro wie oben beschrieben für die Anzeige sperren.

    Hinweis: In Anbetracht der Vielzahl der im Internet verfügbaren Passwortknacker ist es wichtig zu wissen, dass dieser Schutz nicht absolut ist. Sie können ihn eher als Schutz vor versehentlicher Benutzung betrachten.

    Excel-Makro-Tipps

    Excel-VBA-Profis haben sich eine Menge raffinierter Tricks ausgedacht, um ihre Makros effektiver zu gestalten. Im Folgenden werde ich einige meiner Favoriten vorstellen.

      Wenn Ihr VBA-Code den Zellinhalt aktiv bearbeitet, können Sie die Ausführung beschleunigen, indem Sie die Bildschirmaktualisierung und die Neuberechnung von Formeln ausschalten und nach der Ausführung Ihres Codes wieder einschalten.

      Die folgenden Zeilen müssen am Anfang Ihres Codes eingefügt werden (nach den Zeilen, die mit Dim oder nach der Unter Zeile):

      Application.ScreenUpdating = False Application.Calculation = xlCalculationManual

      Die folgenden Zeilen sind am Ende des Codes einzufügen (vor End Sub ):

      Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic

      Wie man VBA-Code in mehrere Zeilen aufteilt

      Beim Schreiben von Code im VBA-Editor kann es vorkommen, dass Sie sehr lange Anweisungen erstellen, so dass Sie horizontal scrollen müssen, um das Ende der Zeile zu sehen. Dies beeinträchtigt zwar nicht die Ausführung des Codes, erschwert aber die Überprüfung des Codes.

      Um eine lange Anweisung in mehrere Zeilen aufzuteilen, geben Sie ein Raum gefolgt von einer Unterstrich (_) an der Stelle, an der Sie die Zeile umbrechen wollen. In VBA wird dies als Zeilenumbruchzeichen .

      Um den Code in der nächsten Zeile korrekt fortzusetzen, beachten Sie bitte diese Regeln:

      • Trennen Sie den Code nicht in der Mitte von Argumentnamen.
      • Verwenden Sie keinen Unterstrich, um Kommentare zu unterbrechen. Bei mehrzeiligen Kommentaren geben Sie am Anfang jeder Zeile ein Hochkomma (') ein.
      • Ein Unterstrich muss das letzte Zeichen in einer Zeile sein und darf nicht von etwas anderem gefolgt werden.

      Das folgende Codebeispiel zeigt, wie man die Anweisung in zwei Zeilen aufteilt:

      Answer = MsgBox( "Sind Sie sicher, dass Sie diese Zellen wieder zusammenführen wollen?" , _ vbQuestion + vbYesNo, "Unmerge Cells" )

      Wie man ein Makro von jeder Arbeitsmappe aus zugänglich macht

      Wenn Sie ein Makro in Excel schreiben oder aufzeichnen, kann es normalerweise nur in dieser speziellen Arbeitsmappe aufgerufen werden. Wenn Sie denselben Code in anderen Arbeitsmappen wiederverwenden möchten, speichern Sie ihn in der Persönlichen Makro-Arbeitsmappe. Dadurch steht Ihnen das Makro immer zur Verfügung, wenn Sie Excel öffnen.

      Das einzige Hindernis ist, dass die Persönliche Makro-Arbeitsmappe in Excel nicht standardmäßig vorhanden ist. Um sie zu erstellen, müssen Sie mindestens ein Makro aufzeichnen. Die folgende Anleitung enthält alle Details: Persönliche Makro-Arbeitsmappe in Excel

      Rückgängig machen einer Makroaktion

      Nach der Ausführung eines Makros kann dessen Aktion weder durch Drücken der Tastenkombination Strg + Z noch durch Klicken auf das Symbol "Makro" rückgängig gemacht werden. Rückgängig machen Taste.

      Erfahrene VBA-Programmierer können natürlich die Eingabewerte und/oder Startbedingungen überprüfen, bevor sie dem Makro erlauben, Änderungen an einem Arbeitsblatt vorzunehmen, aber in den meisten Fällen ist das ziemlich kompliziert.

      Eine einfachere Möglichkeit besteht darin, die aktive Arbeitsmappe aus dem Makrocode heraus zu speichern. Fügen Sie dazu einfach die folgende Zeile ein, bevor Sie Ihr Makro etwas anderes tun lassen:

      ActiveWorkbook.Save

      Optional können Sie auch ein Meldungsfeld anzeigen, das den Benutzer darüber informiert, dass die aktuelle Arbeitsmappe unmittelbar vor der Ausführung des Hauptcodes des Makros gespeichert wurde.

      Wenn Sie (oder Ihre Benutzer) mit den Ergebnissen nicht zufrieden sind, können Sie die Arbeitsmappe auf diese Weise einfach schließen und wieder öffnen.

      Verhindern, dass Excel eine Sicherheitswarnung anzeigt, wenn keine Makros in einer Arbeitsmappe vorhanden sind

      Haben Sie sich schon einmal in einer Situation befunden, in der Excel Sie ständig fragt, ob Sie Makros aktivieren möchten, obwohl Sie genau wissen, dass in dieser bestimmten Arbeitsmappe keine Makros vorhanden sind?

      Der wahrscheinlichste Grund dafür ist, dass VBA-Code hinzugefügt und dann entfernt wurde, wodurch ein leeres Modul zurückbleibt, das die Sicherheitsmeldung auslöst. Um dies zu beheben, löschen Sie einfach das Modul, speichern Sie die Arbeitsmappe, schließen Sie sie und öffnen Sie sie erneut. Wenn dies nicht hilft, gehen Sie wie folgt vor:

      • Für DiesesArbeitsbuch und öffnen Sie für jedes einzelne Blatt das Codefenster, drücken Sie Strg + A, um den gesamten Code zu markieren und zu löschen (auch wenn das Codefenster leer aussieht).
      • Löschen Sie alle UserForms und Klassenmodule, die die Arbeitsmappe enthält.

      So erstellen und verwenden Sie VBA-Makros in Excel. Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog wiederzusehen!

      Michael Brown ist ein begeisterter Technologie-Enthusiast mit einer Leidenschaft für die Vereinfachung komplexer Prozesse mithilfe von Softwaretools. Mit mehr als einem Jahrzehnt Erfahrung in der Technologiebranche hat er seine Fähigkeiten in Microsoft Excel und Outlook sowie Google Sheets und Docs verfeinert. Michaels Blog widmet sich dem Teilen seines Wissens und seiner Expertise mit anderen und bietet leicht verständliche Tipps und Tutorials zur Verbesserung von Produktivität und Effizienz. Egal, ob Sie ein erfahrener Profi oder ein Anfänger sind, Michaels Blog bietet wertvolle Einblicke und praktische Ratschläge, wie Sie diese wichtigen Softwaretools optimal nutzen können.