So erstellen Sie ein VBA-Makro oder -Skript in Excel

Microsoft Excel ermöglicht Benutzern die Automatisierung von Funktionen und Befehlen mithilfe von Makros und Visual Basic for Applications ( VBA )-Skripten. VBA ist die Programmiersprache, die Excel(VBA is the programming language Excel) zum Erstellen von Makros verwendet. Es führt auch automatisierte Befehle basierend auf bestimmten Bedingungen aus.

Makros sind eine Reihe von vorab aufgezeichneten Befehlen. Sie werden automatisch ausgeführt, wenn ein bestimmter Befehl gegeben wird. Wenn Sie Aufgaben in Microsoft Excel haben , die Sie wiederholt erledigen, wie z. B. Buchhaltung, Projektmanagement oder Gehaltsabrechnung, kann die Automatisierung dieser Prozesse viel Zeit sparen.

Unter der Registerkarte „ Entwickler “ in der (Developer)Multifunktionsleiste(Ribbon) in Excel können Benutzer Mausklicks und Tastenanschläge (Makros) aufzeichnen. Einige Funktionen erfordern jedoch eine eingehendere Skripterstellung, als Makros bieten können. Hier wird VBA -Scripting zu einem großen Vorteil. Es ermöglicht Benutzern, komplexere Skripte zu erstellen.

In diesem Artikel erklären wir Folgendes:

  • Aktivieren von Skripten und Makros
  • So erstellen Sie ein Makro in Excel
  • Spezifisches Beispiel eines Makros
  • Erfahren Sie mehr über VBA
  • Erstellen Sie eine Schaltfläche(Button) , um mit VBA zu beginnen(VBA)
  • Fügen Sie Code(Add Code) hinzu, um der Schaltfläche Funktionalität zu verleihen(Button Functionality)
  • Hat es funktioniert?

Aktivieren von Skripten und Makros(Enabling Scripts & Macros)

Bevor Sie Makros oder VBA-(VBA) Skripts in Excel erstellen können , müssen Sie die Registerkarte „ Entwickler “ im (Developer )Menüband(Ribbon) aktivieren . Die Registerkarte „ Entwickler(Developer) “ ist standardmäßig nicht aktiviert. Um es zu aktivieren:

  • Öffnen Sie ein Excel-Arbeitsblatt.
  • Klicken Sie auf Datei(File ) > Optionen( Options ) > Menüband anpassen.( Customize Ribbon.)

  • Setzen Sie ein Häkchen in das Kästchen neben Developer .

  • Klicken Sie im Menüband auf die(Ribbon) Registerkarte Entwickler(Developer) .

  • Klicken Sie als Nächstes auf Makrosicherheit(Macro Security) und aktivieren Sie das Kontrollkästchen neben Alle Makros aktivieren (nicht empfohlen; potenziell gefährlicher Code kann ausgeführt werden). (Enable all macros (not recommended; potentially dangerous code can run). )
  • Klicken Sie dann auf OK.

Der Grund, warum Makros standardmäßig nicht aktiviert sind und mit einer Warnung versehen sind, ist, dass es sich um Computercode handelt, der Malware enthalten könnte.

Stellen Sie(Make) sicher, dass das Dokument aus einer vertrauenswürdigen Quelle stammt, wenn Sie an einem freigegebenen Projekt in Excel und anderen Microsoft - Programmen arbeiten.

Wenn Sie mit der Verwendung Ihrer Skripts und Makros fertig sind, deaktivieren Sie alle Makros, um zu verhindern, dass potenziell schädlicher Code andere Dokumente infiziert.

Erstellen Sie ein Makro in Excel(Create a Macro in Excel)

Alle Aktionen, die Sie beim Aufzeichnen eines Makros in Excel ausführen, werden ihm hinzugefügt. 

  • Klicken Sie auf der Registerkarte Entwickler auf Makro aufzeichnen(Record Macro) .

  • Geben Sie einen Makronamen(Macro name) , eine Tastenkombination(Shortcut key) und eine Beschreibung ein. (Description. )Makronamen(Macro) müssen mit einem Buchstaben beginnen und dürfen keine Leerzeichen enthalten. Die Tastenkombination muss ein Buchstabe sein.

Entscheiden Sie aus den folgenden Optionen, wo Sie das Makro speichern möchten:

  • Persönliche Makro-Arbeitsmappe(Personal Macro Workbook) : Dadurch wird ein verstecktes Excel- Dokument mit gespeicherten Makros erstellt, das mit beliebigen Excel- Dokumenten verwendet werden kann.
  • Neue Arbeitsmappe(New Workbook) : Erstellt ein neues Excel -Dokument, um die erstellten Makros zu speichern.
  • Diese Arbeitsmappe(This Workbook) : Dies wird nur auf das Dokument angewendet, das Sie gerade bearbeiten.

Wenn Sie fertig sind, klicken Sie auf OK

  • Führen(Run) Sie die Aktionen durch, die Sie automatisieren möchten. Wenn Sie fertig sind, klicken Sie auf Aufzeichnung beenden(Stop Recording)
  • Wenn Sie auf Ihr Makro zugreifen möchten, verwenden Sie die Tastenkombination, die Sie ihm gegeben haben.

Spezifisches Beispiel eines Makros(Specific Example Of a Macro)

Beginnen wir mit einer einfachen Tabelle für Kunden und wie viel sie schulden. Wir beginnen mit der Erstellung eines Makros zum Formatieren des Arbeitsblatts.

Nehmen wir an, Sie entscheiden, dass alle Tabellenkalkulationen ein anderes Format verwenden sollen, z. B. Vor- und Nachname in getrennten Spalten platzieren. 

Sie können dies manuell ändern. Oder Sie können ein Programm mit einem Makro erstellen, um es automatisch richtig für Sie zu formatieren.

Zeichnen Sie das Makro auf(Record The Macro)

  • Klicken Sie auf Makro aufzeichnen(Record Macro) . Nennen wir es Format_Customer_Data und klicken Sie auf OK
  • Um die gewünschte Formatierung zu erhalten, ändern wir den Namen der ersten Spalte in First Name
  • Fügen Sie dann eine Spalte neben A ein und nennen Sie sie Nachname(Last Name)
  • Markieren(Highlight) Sie alle Namen in der ersten Spalte (die weiterhin den Vor- und Nachnamen enthalten) und klicken Sie in der Menübandnavigation auf Daten .(Data)
  • Klicken Sie auf Text in Spalten(Text to Columns) .

  • Aktivieren Sie „ Getrennt(Delimited) “ > „ Weiter(Next ) “ > „ Durch(Separate by Space) Leerzeichen trennen“ > „ Weiter(Next ) “ > „ Fertig stellen(Finish) “ . Siehe Screenshot unten und wie die Vor- und Nachnamen durch den obigen Prozess getrennt wurden.

  • Um das Feld „Fälliger Saldo“(Balance Due) zu formatieren , markieren Sie die Beträge. Klicken Sie(Click) auf Start(Home ) > Bedingte Formatierung(Conditional Formatting) > Regeln für Zellen hervorheben(Highlight Cell Rules) > Größer als(Greater Than ) > 0 .

Dadurch werden die Zellen hervorgehoben, die einen fälligen Saldo haben. Wir haben einige Kunden ohne Guthaben hinzugefügt, um die Formatierung weiter zu veranschaulichen.  

  • Gehen Sie zurück zu Developer und klicken Sie auf Aufzeichnung beenden(Stop Recording) .

Wenden Sie das Makro an(Apply The Macro)

Beginnen wir mit der ursprünglichen Tabelle, bevor wir das Makro aufgezeichnet haben, um es richtig zu formatieren. Klicken Sie(Click) auf Makros(Macros) , wählen Sie das soeben erstellte Makro aus und führen Sie es aus.(Run)

Wenn Sie ein Makro ausführen, wird die gesamte Formatierung für Sie erledigt. Dieses Makro, das wir gerade erstellt haben, wird im Visual Basic-Editor gespeichert .

Benutzer können Makros auf verschiedene Arten ausführen. Lesen Sie Makro ausführen(Run a macro) , um mehr zu erfahren.  

Erfahren Sie mehr über VBA(Learn More About VBA)

Um mehr über VBA zu erfahren, klicken Sie auf der Registerkarte „ Entwickler “ auf (Developer)„Makro “. (Macro)Suchen Sie eine, die Sie erstellt haben, und klicken Sie auf Bearbeiten.(Edit.)

Der Code, den Sie im obigen Feld sehen, wurde erstellt, als Sie Ihr Makro aufgezeichnet haben. 

Es wird auch ausgeführt, wenn Sie andere Kundenzahlungstabellen auf die gleiche Weise formatieren möchten.

Erstellen Sie eine Schaltfläche, um mit VBA zu beginnen(Create a Button To Get Started With VBA)

Lassen Sie uns mithilfe derselben Tabelle oben mit Kunden und deren Schulden einen Währungsumrechner erstellen.

  • Navigieren Sie zum Einfügen eines Schaltflächenelements zur Registerkarte „  Entwickler “.(Developer )
  • Wählen Sie im Abschnitt „ Steuerelemente(Controls) “ neben „ Einfügen “ die Option „ (Insert)ActiveX-Befehlsschaltfläche “ aus (ActiveX Command Button ).

  • Ziehen(Drag) Sie die Schaltfläche an eine beliebige Stelle in der Tabelle, damit Sie leicht darauf zugreifen und sie später ändern können, wenn Sie möchten.

  • Um den Code anzuhängen, klicken Sie mit der rechten Maustaste auf die Schaltfläche und wählen Sie Eigenschaften(Properties) . Wir behalten den Namen(Name) als Befehlsschaltfläche(CommandButton) und die zu konvertierende ( Convert )Beschriftung(Caption ) bei (dies ist der Schaltflächentext).

Fügen Sie Code hinzu, um der Schaltfläche Funktionalität zu verleihen(Add Code To Give The Button Functionality)

Die VBA(VBA) - Codierung findet nicht in der Excel -Oberfläche statt. Dies geschieht in einer separaten Umgebung.  

  • Gehen Sie zur Registerkarte Entwickler und vergewissern Sie sich, dass der (Developer)Designmodus(Design Mode) aktiv ist.

  • Um auf den Code der gerade erstellten Schaltfläche zuzugreifen, klicken Sie mit der rechten Maustaste darauf und wählen Sie Code anzeigen(View Code) .

  • Wenn Sie sich den Code im Screenshot unten ansehen, beachten Sie, dass der Anfang ( Private Sub ) und das Ende ( End Sub ) des Codes bereits vorhanden sind.

  • Der folgende Code steuert das Währungsumrechnungsverfahren.

ActiveCell.Value = (ActiveCell * 1.28)

Unser Zweck in diesem Abschnitt ist es, die Währung in unserer Tabelle umzurechnen. Das obige Skript spiegelt den Wechselkurs von GBP zu USD wider . Der neue Wert einer Zelle ist der aktuelle Wert multipliziert mit 1,28.

Der folgende Screenshot zeigt Ihnen, wie der Code im VBA - Fenster aussieht, nachdem Sie ihn eingefügt haben.

  • Gehen Sie in der oberen Navigation zu Datei und (File )klicken Sie auf Schließen und zu Microsoft Excel(click on Close and Return to Microsoft Excel) zurückkehren, um zur Hauptoberfläche von Excel zurückzukehren .

Hat es funktioniert?(Did It Work?)

Bevor Sie Ihren Code testen können, müssen Sie zuerst den Designmodus deaktivieren ((Design Mode) klicken Sie darauf), um weitere Änderungen zu vermeiden und der Schaltfläche Funktionalität zu verleihen.

  • Geben(Type) Sie eine beliebige Zahl in Ihre Tabelle ein und klicken Sie dann auf die Schaltfläche Konvertieren . (Convert)Wenn der Wert Ihrer Nummer um etwa ein Viertel steigt, hat es funktioniert.

Für dieses Beispiel habe ich die Zahl 4 in eine Zelle eingefügt. Nachdem Sie auf Konvertieren(Convert) geklickt haben, änderte sich die Zahl in 5.12. Da 4 mal 1,28 5,12 ist, wurde der Code korrekt ausgeführt.

Nachdem Sie nun verstanden haben, wie ein Makro oder Skript in Excel erstellt wird, können Sie damit eine Vielzahl von Aktionen in Excel automatisieren .



About the author

Ich bin ein Computerprofi mit über 10 Jahren Erfahrung. In meiner Freizeit helfe ich gerne am Schreibtisch aus und bringe Kindern den Umgang mit dem Internet bei. Meine Fähigkeiten umfassen viele Dinge, aber das Wichtigste ist, dass ich weiß, wie man Menschen hilft, Probleme zu lösen. Wenn Sie jemanden brauchen, der Ihnen bei etwas Dringenden helfen kann, oder einfach nur ein paar grundlegende Tipps wünschen, dann wenden Sie sich bitte an mich!



Related posts