Excel-Makros - Kurzanleitung
Ein Excel-Makro ist eine Aktion oder eine Reihe von Aktionen, die Sie aufzeichnen, benennen, speichern und so oft ausführen können, wie Sie möchten und wann Sie möchten. Wenn Sie ein Makro erstellen, zeichnen Sie Ihre Mausklicks und Tastenanschläge auf. Wenn Sie ein gespeichertes Makro ausführen, werden die aufgezeichneten Mausklicks und Tastenanschläge in derselben Reihenfolge ausgeführt, in der sie aufgezeichnet wurden.
Mithilfe von Makros können Sie Zeit bei sich wiederholenden Aufgaben im Zusammenhang mit Datenmanipulationen und Datenberichten sparen, die häufig ausgeführt werden müssen.
Makro und VBA
Sie können Makros entweder mit Excel-Befehlen oder mit Excel VBA aufzeichnen und ausführen.
VBA steht für Visual Basic für Applikationen und ist eine einfache Programmiersprache, die über den Excel Visual Basic-Editor (VBE) verfügbar ist, der auf der Registerkarte ENTWICKLER in der Multifunktionsleiste verfügbar ist. Wenn Sie ein Makro aufzeichnen, generiert Excel VBA-Code. Wenn Sie nur ein Makro aufzeichnen und ausführen möchten, müssen Sie Excel VBA nicht lernen. Wenn Sie jedoch ein Makro ändern möchten, können Sie dies nur tun, indem Sie den VBA-Code im Excel VBA-Editor ändern.
Im Kapitel - Erstellen eines einfachen Makros erfahren Sie, wie Sie ein einfaches Makro aufzeichnen und mit Excel-Befehlen ausführen. In den späteren Kapiteln erfahren Sie mehr über Makros und über das Erstellen und / oder Ändern von Makros im Excel VBA-Editor.
Persönliche Makro-Arbeitsmappe
Ein Makro kann in derselben Arbeitsmappe gespeichert werden, von der aus Sie es aufgezeichnet haben. In diesem Fall können Sie das Makro nur von dieser Arbeitsmappe aus ausführen und sollten es daher offen lassen. Excel bietet Ihnen eine alternative Möglichkeit, alle Ihre Makros zu speichern. Es ist die persönliche Makro-Arbeitsmappe, in der Sie Ihre Makros speichern können, sodass Sie diese Makros von jeder Arbeitsmappe aus ausführen können.
Weitere Informationen zur Personal Macro Workbook finden Sie im Kapitel - Speichern aller Ihrer Makros in einer einzigen Arbeitsmappe.
Makrosicherheit
Makros werden als VBA-Code in Excel gespeichert. Wie bei jedem anderen Code ist auch der Makrocode anfällig für schädlichen Code, der beim Öffnen einer Arbeitsmappe ausgeführt werden kann. Dies ist eine Bedrohung für Ihren Computer. Microsoft hat die Makrosicherheitsfunktion bereitgestellt, mit der Sie Ihren Computer vor solchen Makroviren schützen können.
Weitere Informationen hierzu finden Sie im Kapitel - Makrosicherheit.
Absolute Referenzen und relative Referenzen
Während der Aufzeichnung eines Makros können Sie entweder absolute oder relative Referenzen für die Zellen verwenden, auf die Sie klicken. Durch absolute Referenzen wird Ihr Makro in denselben Zellen ausgeführt, in denen Sie das Makro aufgezeichnet haben. Auf der anderen Seite führen relative Referenzen dazu, dass Ihr Makro in der aktiven Zelle ausgeführt wird.
Weitere Informationen hierzu finden Sie in den Kapiteln - Verwenden von absoluten Referenzen für ein Makro und Verwenden von relativen Referenzen für ein Makro.
Makrocode in VBA
Sie können Makros in Excel aufzeichnen und ausführen, auch wenn Sie Excel VBA nicht kennen. Wenn Sie jedoch ein aufgezeichnetes Makro ändern oder ein Makro erstellen müssen, indem Sie VBA-Code schreiben, sollten Sie Excel VBA lernen. Informationen hierzu finden Sie im Excel VBA-Lernprogramm in dieser Lernprogrammbibliothek
Sie sollten jedoch wissen, wie der Makrocode angezeigt wird. Informationen zum Zugriff auf den VBA-Editor in Excel und zu den verschiedenen Teilen des VBA-Editors finden Sie im Kapitel - Excel VBA.
Sie können lernen, wie Sie den Makrocode im Excel VBA-Editor anzeigen, und Sie können den Makrocode im Kapitel - Grundlegendes zum Makrocode verstehen.
Zuweisen von Makros zu Objekten
Sie können einem Objekt wie einer Form, einer Grafik oder einem Steuerelement ein Makro zuweisen. Anschließend können Sie das Makro ausführen, indem Sie auf dieses Objekt klicken. Weitere Informationen hierzu finden Sie im Kapitel - Zuweisen von Makros zu Objekten.
Makros ausführen
Excel bietet verschiedene Möglichkeiten, ein Makro auszuführen. Sie können auswählen, wie Sie ein Makro ausführen möchten. Weitere Informationen zu diesen verschiedenen Möglichkeiten zum Ausführen eines Makros finden Sie im Kapitel Ausführen eines Makros.
Erstellen eines Makros mit dem VBA-Editor
Wenn Sie den Makrocode schreiben möchten, erfahren Sie ihn im Kapitel - Erstellen eines Makros mit dem VBA-Editor. Voraussetzung ist jedoch, dass Sie über Excel VBA-Kenntnisse verfügen.
Makro bearbeiten
Sie können den Makrocode im Excel VBA-Editor ändern. Wenn Sie umfangreiche Änderungen vornehmen möchten, sollten Sie über Excel VBA-Kenntnisse verfügen. Wenn Sie jedoch nur geringfügige Änderungen am Code vornehmen oder den VBA-Code von einem aufgezeichneten Makro in ein anderes Makro kopieren möchten, lesen Sie das Kapitel - Bearbeiten eines Makros.
Sie können ein Makro umbenennen und sogar löschen. Dies erfahren Sie auch im selben Kapitel.
Benutzerformulare
Ein Formular wird normalerweise verwendet, um die erforderlichen Informationen zu sammeln. Es wird selbsterklärend sein und die Aufgabe einfach machen. Mit dem Excel VBA-Editor erstellte Excel-Benutzerformulare dienen demselben Zweck und bieten die bekannten Optionen wie Textfelder, Kontrollkästchen, Optionsfelder, Listenfelder, Kombinationsfelder, Bildlaufleisten usw. als Steuerelemente.
Im Kapitel - Benutzerformulare erfahren Sie, wie Sie ein Benutzerformular erstellen und die verschiedenen Steuerelemente verwenden.
Makrocode debuggen
Manchmal wird ein Makro möglicherweise nicht wie erwartet ausgeführt. Möglicherweise haben Sie das Makro erstellt oder Sie verwenden ein Makro, das Ihnen von jemandem bereitgestellt wurde. Sie können den Makrocode genauso debuggen wie jeden anderen Code, um die Fehler aufzudecken und zu beheben. Weitere Informationen hierzu finden Sie im Kapitel - Debuggen von Makrocode.
Konfigurieren eines Makros für die Ausführung beim Öffnen einer Arbeitsmappe
Sie können Ihr Makro automatisch ausführen lassen, wenn Sie eine Arbeitsmappe öffnen. Sie können dies entweder tun, indem Sie ein Auto_Run-Makro erstellen oder indem Sie VBA-Code für das Ereignis zum Öffnen der Arbeitsmappe schreiben. Dies erfahren Sie im Kapitel - Konfigurieren eines Makros zum Ausführen beim Öffnen einer Arbeitsmappe.
Sie können ein Makro mit Excel-Befehlen erstellen, indem Sie die Tastenanschläge und Mausklicks aufzeichnen, dem Makro einen Namen geben und angeben, wie das Makro gespeichert werden soll. Ein so aufgezeichnetes Makro kann mit einem Excel-Befehl ausgeführt werden.
Angenommen, Sie müssen bestimmte Ergebnisse wiederholt im folgenden Format erfassen:
Anstatt die Tabelle jedes Mal zu erstellen, können Sie ein Makro verwenden, um dies für Sie zu tun.
Ein Makro aufnehmen
Um ein Makro aufzuzeichnen, gehen Sie wie folgt vor:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie in der Gruppe Makros auf Makros.
- Wählen Sie in der Dropdown-Liste die Option Makro aufzeichnen.
Das Record Macro Das Dialogfeld wird angezeigt.
Art MyFirstMacro im Feld Makroname.
Art A Simple Macro Klicken Sie im Feld Beschreibung auf OK.
Denken Sie daran, dass alle Tastenanschläge und Mausklicks, die Sie ausführen, jetzt aufgezeichnet werden.
Klicken Sie in die Zelle B2.
Erstellen Sie die Tabelle.
Klicken Sie in eine andere Zelle im Arbeitsblatt.
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
Klicken Sie auf Makros.
Wählen Stop Recording aus der Dropdown-Liste.
Ihre Makroaufnahme ist abgeschlossen.
Der erste Schritt zum Klicken auf eine bestimmte Zelle ist wichtig, da er angibt, wo genau das Makro mit dem Platzieren der aufgezeichneten Schritte beginnen muss. Sobald Sie mit der Aufnahme fertig sind, müssen Sie auf Aufnahme beenden klicken, um die Aufnahme unnötiger Schritte zu vermeiden.
Ein Makro ausführen
Sie können das aufgezeichnete Makro beliebig oft ausführen. Gehen Sie wie folgt vor, um das Makro auszuführen:
- Klicken Sie auf ein neues Arbeitsblatt.
Beachten Sie die aktive Zelle. In unserem Fall ist es A1.
Drücke den VIEW Registerkarte auf der Multifunktionsleiste.
Klicken Macros.
Wählen View Macros aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
In der Makroliste wird nur das von Ihnen aufgezeichnete Makro angezeigt.
Klicken Sie im Dialogfeld Makro auf den Makronamen MyFirstMacro. Die Beschreibung, die Sie während der Aufnahme des Makros eingegeben haben, wird angezeigt. Mit der Makrobeschreibung können Sie feststellen, zu welchem Zweck Sie das Makro aufgezeichnet haben.
Klicken Sie auf die Schaltfläche Ausführen. Die gleiche Tabelle, die Sie während der Aufzeichnung des Makros erstellt haben, wird in Sekundenbruchteilen angezeigt.
Sie haben den Zauberstab entdeckt, den Excel Ihnen bietet, um Zeit bei alltäglichen Aufgaben zu sparen. Sie werden Folgendes beobachten -
Obwohl die aktive Zelle vor dem Ausführen des Makros A1 war, wird die Tabelle wie aufgezeichnet in die Zelle B2 gestellt.
Außerdem wurde die aktive Zelle zu E2, da Sie auf diese Zelle geklickt haben, bevor Sie die Aufzeichnung beendet haben.
Sie können das Makro in mehreren Arbeitsblättern mit verschiedenen aktiven Zellen ausführen, bevor Sie das Makro ausführen, und die gleichen Bedingungen wie oben angegeben einhalten. Notieren Sie sich dies einfach und Sie werden später in diesem Tutorial verstehen, warum es so passiert ist.
Sie können auch eine Makroaufzeichnung erstellen, in der Ihre aufgezeichneten Schritte in der aktiven Zelle platziert werden. Im Tutorial erfahren Sie, wie Sie dies tun.
Speichern eines Makros
Sie fragen sich vielleicht, wie Sie die erstellten Makros speichern können. In diesem Zusammenhang müssen Sie wissen -
- Makro speichern
- Speichern einer makrofähigen Datei
Wenn Sie ein Makro erstellen, können Sie auswählen, wo dieses bestimmte Makro gespeichert werden soll. Sie können dies in der tunRecord Macro Dialogbox.
Klicken Sie auf das Kästchen - Store macro in. Die folgenden drei Optionen stehen zur Verfügung:
- Diese Arbeitsmappe.
- Neues Arbeitsbuch.
- Persönliche Makro-Arbeitsmappe
Diese Arbeitsmappe
Dies ist die Standardoption. Das Makro wird in Ihrer aktuellen Arbeitsmappe gespeichert, aus der Sie das Makro erstellt haben.
Neues Arbeitsbuch
Diese Option ist zwar verfügbar, wird jedoch nicht empfohlen. Sie werden Excel bitten, das Makro in einer anderen neuen Arbeitsmappe zu speichern, und meistens ist dies nicht erforderlich.
Persönliche Makro-Arbeitsmappe
Wenn Sie mehrere Makros erstellen, die Sie in Ihren Arbeitsmappen verwenden, bietet Ihnen die Personal Macro Workbook die Möglichkeit, alle Makros an einem Ort zu speichern. Weitere Informationen zu dieser Option finden Sie im nächsten Kapitel.
Speichern einer makrofähigen Datei
Wenn Sie gewählt hätten This Workbook Als Option zum Speichern des Makros müssten Sie Ihre Arbeitsmappe zusammen mit dem Makro speichern.
Versuchen Sie, die Arbeitsmappe zu speichern. Standardmäßig werden Sie Excel bitten, die Arbeitsmappe als XLS-Datei zu speichern. Excel zeigt eine Meldung an, dass ein Excel-Feature-VB-Projekt nicht in einer makrofreien Arbeitsmappe gespeichert werden kann, wie unten gezeigt.
Note- Wenn Sie auf Ja klicken, speichert Excel Ihre Arbeitsmappe als makrofreie XLS-Datei, und Ihr Makro, das Sie mit der Option Diese Arbeitsmappe gespeichert haben, wird nicht gespeichert. Um dies zu vermeiden, bietet Excel eine Option zum Speichern Ihrer Arbeitsmappe als makrofähige Arbeitsmappe mit der Erweiterung .xlsm.
- Klicken Sie im Warnmeldungsfeld auf Nein.
- Wählen Sie im Typ Speichern unter die Option Excel Macro-Enabled Workbook (* .xlsm) aus.
- Klicken Sie auf Speichern.
Weitere Informationen hierzu finden Sie in späteren Kapiteln dieses Tutorials.
Excel bietet Ihnen die Möglichkeit, alle Ihre Makros in einer einzigen Arbeitsmappe zu speichern. Die Arbeitsmappe heißt Personal Macro Workbook - Personal.xlsb. Es ist eine versteckte Arbeitsmappe, die auf Ihrem Computer gespeichert ist und jedes Mal geöffnet wird, wenn Sie Excel öffnen. Auf diese Weise können Sie Ihre Makros von jeder Arbeitsmappe aus ausführen. Pro Computer gibt es eine einzige Personal Macro Workbook, die Sie nicht für mehrere Computer freigeben können. Sie können die Makros in Ihrer Personal Macro Workbook von jeder Arbeitsmappe auf Ihrem Computer aus anzeigen und ausführen.
Speichern von Makros in der Personal Macro Workbook
Sie können Makros in Ihrer persönlichen Makro-Arbeitsmappe speichern, indem Sie sie während der Aufzeichnung der Makros als Speicheroption auswählen.
Wählen Sie Personal Macro Workbook aus der Dropdown-Liste unter der Kategorie Store macro in.
- Zeichnen Sie Ihr zweites Makro auf.
- Geben Sie im Dialogfeld Makro aufzeichnen die folgenden Makrodetails ein.
- OK klicken.
Ihre Aufnahme beginnt. Erstellen Sie eine Tabelle wie unten gezeigt.
Höre auf, aufzunehmen.
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
Klicken Sie auf Makros.
Wählen View Macrosaus der Dropdown-Liste. Das Dialogfeld Makro wird angezeigt.
Der Makroname wird mit dem Präfix PERSONAL.XLSB angezeigt! Zeigt an, dass sich das Makro in der Personal Macro Workbook befindet.
Speichern Sie Ihre Arbeitsmappe. Es wird als XLS-Datei gespeichert, da sich das Makro nicht in Ihrer Arbeitsmappe befindet, und schließen Sie Excel.
Sie erhalten die folgende Meldung zum Speichern der Änderungen an der Personal Macro Workbook:
Klicken Sie auf die Schaltfläche Speichern. Ihr Makro wird im gespeichertPersonal.xlsb Datei auf Ihrem Computer.
Persönliches Makro-Arbeitsbuch ein- / ausblenden
Die persönliche Makro-Arbeitsmappe wird standardmäßig ausgeblendet. Wenn Sie Excel starten, wird die persönliche Makro-Arbeitsmappe geladen, aber Sie können sie nicht sehen, da sie ausgeblendet ist. Sie können es wie folgt einblenden -
Drücke den VIEW Registerkarte auf der Multifunktionsleiste.
Klicken Sie in der Gruppe Fenster auf Einblenden.
Das Dialogfeld Einblenden wird angezeigt.
PERSONAL.XLSB wird im Feld Arbeitsmappe einblenden angezeigt und klicken Sie auf OK.
Jetzt können Sie die in der persönlichen Makro-Arbeitsmappe gespeicherten Makros anzeigen.
Gehen Sie wie folgt vor, um die persönliche Makro-Arbeitsmappe auszublenden:
- Klicken Sie auf die persönliche Makro-Arbeitsmappe.
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie in der Multifunktionsleiste auf Ausblenden.
Ausführen von Makros, die in der Personal Macro Workbook gespeichert sind
Sie können die in der persönlichen Makro-Arbeitsmappe gespeicherten Makros von jeder Arbeitsmappe aus ausführen. Um die Makros auszuführen, spielt es keine Rolle, ob die persönliche Makro-Arbeitsmappe ausgeblendet oder nicht ausgeblendet ist.
- Klicken Sie auf Makros anzeigen.
- Wählen Sie den Makronamen aus der Makroliste.
- Klicken Sie auf die Schaltfläche Ausführen. Das Makro wird ausgeführt.
Hinzufügen / Löschen von Makros in der Personal Macro Workbook
Sie können der persönlichen Makro-Arbeitsmappe weitere Makros hinzufügen, indem Sie sie beim Aufzeichnen der Makros für die Option Makro speichern in auswählen, wie Sie zuvor gesehen haben.
Sie können ein Makro in der persönlichen Makro-Arbeitsmappe wie folgt löschen:
- Stellen Sie sicher, dass die persönliche Makro-Arbeitsmappe nicht ausgeblendet ist.
- Klicken Sie im Dialogfeld Makros anzeigen auf den Makronamen.
- Klicken Sie auf die Schaltfläche Löschen.
Wenn die persönliche Makro-Arbeitsmappe ausgeblendet ist, wird die Meldung "Makro kann nicht in einer ausgeblendeten Arbeitsmappe bearbeitet werden" angezeigt.
Blenden Sie die persönliche Makro-Arbeitsmappe ein und löschen Sie das ausgewählte Makro.
Das Makro wird nicht in der Makroliste angezeigt. Wenn Sie jedoch ein neues Makro erstellen und es in Ihrer persönlichen Arbeitsmappe speichern oder darin enthaltene Makros löschen, werden Sie aufgefordert, die persönliche Arbeitsmappe genau wie beim ersten Speichern zu speichern.
Die in Excel erstellten Makros werden in der Programmiersprache VBA (Visual Basic for Applications) geschrieben. In späteren Kapiteln erfahren Sie mehr über den Excel-Makrocode. Wie Sie wissen, besteht bei einem ausführbaren Code die Gefahr von Viren. Makros sind auch anfällig für Viren.
Was sind Makroviren?
Excel VBA, in dem die Makros geschrieben sind, hat Zugriff auf die meisten Windows-Systemaufrufe und wird beim Öffnen von Arbeitsmappen automatisch ausgeführt. Daher besteht die potenzielle Gefahr, dass ein als Makro geschriebener und in Excel verborgener Virus vorhanden ist, der beim Öffnen einer Arbeitsmappe ausgeführt wird. Daher können Excel-Makros in vielerlei Hinsicht sehr gefährlich für Ihren Computer sein. Microsoft hat jedoch geeignete Maßnahmen ergriffen, um die Arbeitsmappen vor Makroviren zu schützen.
Microsoft hat die Makrosicherheit eingeführt, damit Sie feststellen können, welchen Makros Sie vertrauen können und welchen nicht.
Makroaktivierte Excel-Arbeitsmappen
Die wichtigste Sicherheitsfunktion für Excel-Makros ist - Dateierweiterungen.
Excel-Arbeitsmappen werden standardmäßig mit der Dateierweiterung .xlsx gespeichert. Sie können Arbeitsmappen mit der Dateierweiterung .xlsx jederzeit vertrauen, da sie kein Makro speichern können und keine Bedrohung darstellen.
Excel-Arbeitsmappen mit Makros werden mit der Dateierweiterung .xlsm gespeichert. Sie werden als makrofähige Excel-Arbeitsmappen bezeichnet. Bevor Sie solche Arbeitsmappen öffnen, sollten Sie sicherstellen, dass die darin enthaltenen Makros nicht schädlich sind. Dazu müssen Sie sicherstellen, dass Sie dem Ursprung dieser Art von Arbeitsmappen vertrauen können.
Möglichkeiten zum Vertrauen in makroaktivierte Arbeitsmappen
Excel bietet drei Möglichkeiten, einer makrofähigen Arbeitsmappe zu vertrauen.
Platzieren der makrofähigen Arbeitsmappen in einem vertrauenswürdigen Ordner
Überprüfen, ob ein Makro digital signiert ist
Aktivieren von Sicherheitswarnmeldungen vor dem Öffnen makroaktivierter Arbeitsmappen
Platzieren der makrofähigen Arbeitsmappen in einem vertrauenswürdigen Ordner
Dies ist der einfachste und beste Weg, um die Makrosicherheit zu verwalten. In Excel können Sie einen Ordner als vertrauenswürdigen Speicherort festlegen. Legen Sie alle Ihre makrofähigen Arbeitsmappen in diesem vertrauenswürdigen Ordner ab. Sie können makrofähige Arbeitsmappen öffnen, die ohne Warnungen oder Einschränkungen an diesem Speicherort gespeichert sind.
Überprüfen, ob ein Makro digital signiert ist
Digitale Signaturen bestätigen die Identität des Autors. Sie können Excel so konfigurieren, dass digital signierte Makros von vertrauenswürdigen Personen ohne Warnungen oder Einschränkungen ausgeführt werden. Excel warnt den Empfänger auch, wenn es seit der Unterzeichnung durch den Autor geändert wurde.
Aktivieren von Sicherheitswarnmeldungen vor dem Öffnen makroaktivierter Arbeitsmappen
Wenn Sie eine Arbeitsmappe öffnen, warnt Excel Sie, dass die Arbeitsmappe Makros enthält, und fragt, ob Sie diese aktivieren möchten. Sie können auf klickenEnable Content Schaltfläche, wenn die Quelle der Arbeitsmappe zuverlässig ist.
Sie können eine dieser drei Optionen im Trust Center in den Excel-Optionen festlegen.
Wenn Sie in einer Organisation arbeiten, hat der Systemadministrator möglicherweise die Standardeinstellungen geändert, um zu verhindern, dass jemand die Einstellungen ändert. Microsoft empfiehlt, die Sicherheitseinstellungen im Trust Center nicht zu ändern, da dies zu Datenverlust, Datendiebstahl oder Sicherheitslücken auf Ihrem Computer oder Netzwerk führen kann.
Sie können jedoch die Makrosicherheitseinstellungen in den folgenden Abschnitten kennenlernen und prüfen, ob sie geändert werden sollen. Sie müssen Ihren eigenen Instinkt verwenden, um eine dieser Optionen basierend auf dem Kontext und Ihrem Wissen über den Ursprung der Datei zu bestimmen.
Makrosicherheitseinstellungen im Trust Center
Die Makroeinstellungen befinden sich im Trust Center in den Excel-Optionen. Gehen Sie wie folgt vor, um auf das Trust Center zuzugreifen:
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte DATEI.
Klicken Sie auf Optionen. Das Dialogfeld Excel-Optionen wird angezeigt.
Klicken Trust Center im linken Bereich.
Drücke den Trust Center Settings Schaltfläche unter Microsoft Excel Trust Center.
Das Trust Center Das Dialogfeld wird angezeigt.
Im linken Bereich werden im Excel Trust Center verschiedene Optionen angezeigt. In den folgenden Abschnitten erfahren Sie mehr über die Optionen für Excel-Makros.
Makroeinstellungen
Die Makroeinstellungen befinden sich im Trust Center.
Unter Makroeinstellungen stehen vier Optionen zur Verfügung.
Disable all macros without notification - Wenn diese Option ausgewählt ist, sind Makros und Sicherheitswarnungen zu Makros deaktiviert.
Disable all macros with notification- Makros sind deaktiviert, aber Sicherheitswarnungen werden angezeigt, wenn Makros vorhanden sind. Sie können Makros von Fall zu Fall aktivieren.
Disable all macros except digitally signed macros- Makros sind deaktiviert, aber Sicherheitswarnungen werden angezeigt, wenn Makros vorhanden sind. Wenn das Makro jedoch von einem vertrauenswürdigen Herausgeber digital signiert ist, wird das Makro ausgeführt, wenn Sie dem Herausgeber vertrauen. Wenn Sie dem Herausgeber nicht vertrauen, werden Sie benachrichtigt, um das signierte Makro zu aktivieren und dem Herausgeber zu vertrauen.
Enable all macros (not recommended, susceptible to macro viruses)- Wenn diese Option ausgewählt ist, werden alle Makros ausgeführt. Diese Einstellung macht Ihren Computer anfällig für potenziell schädlichen Code.
Sie haben eine zusätzliche Sicherheitsoption unter Entwickler-Makroeinstellungen mit einem Kontrollkästchen.
Trust access to the VBA project object model.
Diese Option ermöglicht den programmgesteuerten Zugriff auf das VBA-Objektmodell (Visual Basic für Applikationen) von einem Automatisierungsclient aus.
Diese Sicherheitsoption gilt für Code, der zur Automatisierung eines Office-Programms und zur Bearbeitung der VBA-Umgebung und des Objektmodells geschrieben wurde.
Es handelt sich um eine Benutzer- und Anwendungseinstellung, die standardmäßig den Zugriff verweigert und nicht autorisierte Programme daran hindert, schädlichen selbstreplizierenden Code zu erstellen.
Damit Automatisierungsclients auf das VBA-Objektmodell zugreifen können, muss der Benutzer, der den Code ausführt, Zugriff gewähren. Aktivieren Sie das Kontrollkästchen, um den Zugriff zu aktivieren.
Definieren eines vertrauenswürdigen Speicherorts
Wenn Sie der Meinung sind, dass eine makrofähige Arbeitsmappe aus einer zuverlässigen Quelle stammt, ist es besser, die Datei an den von Excel angegebenen vertrauenswürdigen Speicherort zu verschieben, anstatt die Standardeinstellungen des Trust Centers in eine weniger sichere Makrosicherheitseinstellung zu ändern.
Sie finden die Einstellungen für vertrauenswürdige Ordner im Trust Center.
Klicken Sie im Dialogfeld Vertrauensstellungscenter auf Vertrauenswürdige Speicherorte. Die von Microsoft Office festgelegten vertrauenswürdigen Speicherorte werden auf der rechten Seite angezeigt.
Sie können neue Standorte hinzufügen, vorhandene Standorte entfernen und vorhandene Standorte ändern. Die identifizierten vertrauenswürdigen Speicherorte werden von Microsoft Office als zuverlässig für das Öffnen von Dateien behandelt. Wenn Sie jedoch einen Standort hinzufügen oder ändern, stellen Sie sicher, dass der Standort sicher ist.
Sie können auch die Optionen finden, die Office nicht empfiehlt, z. B. Standorte im Internet.
Digital signierte Makros aus zuverlässigen Quellen
Microsoft bietet eine Option für digital signierte Makros. Selbst wenn ein Makro digital signiert ist, müssen Sie sicherstellen, dass es von einem vertrauenswürdigen Herausgeber stammt.
Sie finden die vertrauenswürdigen Herausgeber im Trust Center.
Klicken Trusted Publishersim Dialogfeld Trust Center. Auf der rechten Seite wird eine Liste der Zertifikate mit den Details - Ausgestellt bis, Ausgestellt bis und Ablaufdatum - angezeigt.
Wählen Sie ein Zertifikat aus und klicken Sie auf Anzeigen.
Die Zertifikatinformationen werden angezeigt.
Wie Sie bereits in diesem Kapitel erfahren haben, können Sie eine Option zum Ausführen eines Makros festlegen, das nur dann digital signiert ist, wenn Sie dem Herausgeber vertrauen. Wenn Sie dem Herausgeber nicht vertrauen, werden Sie benachrichtigt, um das signierte Makro zu aktivieren und dem Herausgeber zu vertrauen.
Warnmeldungen verwenden
In der Nachrichtenleiste wird eine Sicherheitswarnung angezeigt, wenn die zu öffnende Datei Makros enthält. Die gelbe Nachrichtenleiste mit einem Schildsymbol weist Sie darauf hin, dass die Makros deaktiviert sind.
Wenn Sie wissen, dass das Makro oder die Makros aus einer zuverlässigen Quelle stammen, können Sie in der Nachrichtenleiste auf die Schaltfläche Inhalt aktivieren klicken, um die Makros zu aktivieren.
Sie können die Option Nachrichtenleiste deaktivieren, wenn Sie keine Sicherheitswarnungen wünschen. Auf der anderen Seite können Sie die Option Nachrichtenleiste aktivieren, um die Sicherheit zu erhöhen.
Aktivieren / Deaktivieren von Sicherheitswarnungen in der Nachrichtenleiste
Sie können Sicherheitswarnungen mit Nachrichtenleisten wie folgt aktivieren / deaktivieren:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte DATEI.
- Klicken Sie auf Optionen. Das Dialogfeld Excel-Optionen wird angezeigt.
- Klicken Sie auf Trust Center.
- Klicken Sie auf die Schaltfläche Trust Center-Einstellungen.
- Klicken Sie auf Nachrichtenleiste.
Die Einstellungen für die Nachrichtenleiste für alle Office-Anwendungen werden angezeigt.
Es gibt zwei Möglichkeiten unter - Showing the Message Bar.
Option 1 - Zeigen Sie die Nachrichtenleiste in allen Anwendungen an, wenn aktive Inhalte wie Makros blockiert sind.
Dies ist die Standardoption. Die Nachrichtenleiste wird angezeigt, wenn potenziell unsichere Inhalte deaktiviert wurden.
Wenn Sie ausgewählt hatten - Disable all macros without notification in the Macro Settings of the Trust Centerist diese Option nicht ausgewählt und die Nachrichtenleiste wird nicht angezeigt.
Option 2 - Zeigen Sie niemals Informationen über blockierte Inhalte an.
Wenn diese Option ausgewählt ist, wird die Nachrichtenleiste deaktiviert und es werden keine Warnungen zu Sicherheitsproblemen angezeigt, unabhängig von den Sicherheitseinstellungen im Trust Center.
Excel-Makros können entweder mit absoluten oder relativen Referenzen aufgezeichnet werden. Ein mit absoluten Referenzen aufgezeichnetes Makro platziert die aufgezeichneten Schritte unabhängig von der aktiven Zelle genau in den Zellen, in denen sie aufgezeichnet wurden. Andererseits kann ein mit relativen Referenzen aufgezeichnetes Makro die aufgezeichneten Aufgaben an verschiedenen Stellen im Arbeitsblatt ausführen.
In diesem Kapitel erfahren Sie mehr über absolute Referenzen für Makros. Weitere Informationen zu relativen Referenzen finden Sie im nächsten Kapitel.
Angenommen, Sie müssen am Ende eines jeden Tages einen Bericht über die Arbeit Ihres Teams im folgenden Format einreichen:
Jetzt sollte der Bericht in die Zelle B2 gestellt werden und das angegebene Format haben.
Ein Beispiel für einen ausgefüllten Bericht ist wie folgt:
Mit Ausnahme der Daten in den folgenden Zellen sind die Informationen für jeden Bericht, den Sie für das Projekt generieren, konstant.
- C3 - Datumsbericht.
- C13 - Anzahl der heute erledigten Aufgaben.
- C14 - Gesamtzahl der erledigten Aufgaben.
- C15 -% Arbeit abgeschlossen.
Davon können Sie auch in C3 (Report for Date) die Excel-Funktion = platzieren TODAY ()Dadurch wird das Datum Ihres Berichts ohne Ihr Eingreifen festgelegt. Außerdem können Sie in Zelle C15 die Formel C14 / C12 verwenden und die Zelle C15 als Prozentsatz formatieren, damit der von Excel für Sie berechnete Prozentsatz der abgeschlossenen Arbeit für Sie berechnet wird.
So bleiben Ihnen nur zwei Zellen - C13 und C14, die Sie jeden Tag ausfüllen müssen. Daher ist es ideal, jedes Mal, wenn Sie den Bericht erstellen müssen, Informationen für den Rest der Zellen zu haben. Dies spart Zeit für Sie und Sie können die alltäglichen Aktivitäten der Berichterstellung in nur wenigen Minuten erledigen.
Angenommen, Sie müssen solche Berichte für drei Projekte senden. Sie können sich vorstellen, wie viel Zeit Sie sparen und anspruchsvollere Aufgaben für den Tag übernehmen können, und natürlich die Auszeichnungen von Ihrem Management erhalten.
Sie können dies erreichen, indem Sie ein Makro pro Projekt aufzeichnen und täglich ausführen, um die erforderlichen Berichte in nur wenigen Minuten zu erstellen. Jedes Mal, wenn Sie das Makro ausführen, sollte der Bericht unabhängig von der aktiven Zelle wie oben angegeben im Arbeitsblatt angezeigt werden. Hierfür müssen Sie absolute Referenzen verwenden.
Sicherstellung absoluter Referenzen
Um ein Makro mit absoluten Referenzen aufzuzeichnen, müssen Sie sicherstellen, dass das Makro ab der Zelle aufgezeichnet wird, in der die Schritte beginnen müssen. Dies bedeutet, dass Sie im Fall des Beispiels im vorherigen Abschnitt Folgendes tun müssen:
- Starten Sie die Aufnahme des Makros.
- Erstellen Sie ein neues Arbeitsblatt.
- Klicken Sie im neuen Arbeitsblatt in eine andere Zelle als B2.
- Klicken Sie in die Zelle B2.
- Nehmen Sie das Makro weiter auf.
Dadurch wird für jeden neuen Bericht ein neues Arbeitsblatt erstellt und das Berichtsformat wird bei jeder Ausführung des Makros in die Zelle B2 eingefügt.
Note - Die ersten drei oben genannten Schritte sind unerlässlich.
Wenn Sie beim Ausführen des Makros kein neues Arbeitsblatt erstellen, wird alles, was Sie auf demselben Arbeitsblatt aufgezeichnet haben, an derselben Stelle platziert. Das ist nicht was du willst. Sie müssen jeden Bericht auf einem anderen Arbeitsblatt haben.
Wenn Sie zu Beginn der Aufzeichnung nicht in eine andere Zelle klicken, platziert Excel die aufgezeichneten Schritte in der aktiven Zelle, auch wenn die aktive Zelle B2 ist. Wenn Sie das Makro ausführen, wird das aufgezeichnete Berichtsformat an einem beliebigen Teil des Arbeitsblatts basierend auf der aktiven Zelle platziert. Indem Sie explizit auf eine andere Zelle als B2 und dann auf die Zelle B2 klicken, weisen Sie den Rekorder an, Ihre Makroschritte immer in der Zelle B2 zu platzieren.
Ein Makro aufnehmen
Sie können das Makro mit dem aufnehmen Record MacroBefehl auf der Multifunktionsleiste unter der Registerkarte ANSICHT → Makros. Sie können auch auf klickenStart Recording Macro Schaltfläche auf der linken Seite der Excel-Taskleiste.
Starten Sie die Aufnahme des Makros. DasRecord Macro Das Dialogfeld wird angezeigt.
Geben Sie einen aussagekräftigen Namen ein, um das Makro als Bericht eines bestimmten Projekts zu identifizieren.
Wählen Sie diese Arbeitsmappe unter Store macro in, da Sie nur Berichte aus dieser speziellen Arbeitsmappe erstellen.
Geben Sie Ihrem Makro eine Beschreibung und klicken Sie auf OK.
Ihr Makro beginnt mit der Aufnahme.
Erstellen Sie ein neues Arbeitsblatt. Dadurch wird sichergestellt, dass sich Ihr neuer Bericht in einem neuen Arbeitsblatt befindet.
Klicken Sie im neuen Arbeitsblatt in eine andere Zelle als B2.
Klicken Sie in die Zelle B2. Dadurch wird sichergestellt, dass das Makro Ihre aufgezeichneten Schritte immer in B2 platziert.
Erstellen Sie das Format für den Bericht.
Geben Sie die statischen Informationen für den Projektbericht ein.
Platziere = HEUTE () in C3 und = C14 / C12 in der Zelle C15.
Formatieren Sie die Zellen mit Datumsangaben.
Beenden Sie die Aufnahme des Makros.
Sie können die Aufzeichnung des Makros entweder mit dem beenden Stop Recording Befehl auf der Multifunktionsleiste unter der Registerkarte ANSICHT → Makros oder durch Klicken auf die Schaltfläche Aufnahmemakro beenden auf der linken Seite der Excel-Taskleiste.
Ihr Projektbericht-Makro ist fertig. Speichern Sie die Arbeitsmappe als makrofähige Arbeitsmappe (mit der Erweiterung .xlsm).
Ein Makro ausführen
Sie können in wenigen Sekunden eine beliebige Anzahl von Berichten erstellen, indem Sie das Makro ausführen.
- Klicken Sie auf der Multifunktionsleiste auf die Schaltfläche ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste. Das Dialogfeld Makro wird angezeigt.
- Klicken Sie auf das Makro Report_ProjectXYZ.
- Klicken Sie auf die Schaltfläche Ausführen.
In Ihrer Arbeitsmappe wird ein neues Arbeitsblatt erstellt, in dem die Berichtsschablone in der Zelle B2 erstellt wird.
Relative Referenzmakros zeichnen einen Versatz von der aktiven Zelle auf. Solche Makros sind nützlich, wenn Sie die Schritte an verschiedenen Stellen im Arbeitsblatt wiederholen müssen.
Angenommen, Sie müssen die Daten der Wähler aus 280 Wahlkreisen analysieren. Für jeden Wahlkreis werden die folgenden Details gesammelt:
- Name des Wahlkreises.
- Gesamtbevölkerung im Wahlkreis.
- Anzahl der Wähler im Wahlkreis.
- Anzahl der männlichen Wähler und
- Anzahl der weiblichen Wähler.
Die Daten werden Ihnen in einem Arbeitsblatt wie unten angegeben zur Verfügung gestellt.
Es ist nicht möglich, die Daten im obigen Format zu analysieren. Ordnen Sie die Daten daher wie unten gezeigt in einer Tabelle an.
Wenn Sie versuchen, die angegebenen Daten im obigen Format anzuordnen -
Die Anordnung der Daten aus den 280 Wahlkreisen nimmt viel Zeit in Anspruch
Es kann fehleranfällig sein
Es wird zu einer alltäglichen Aufgabe, bei der Sie sich nicht auf technische Dinge konzentrieren können
Die Lösung besteht darin, ein Makro aufzuzeichnen, damit Sie die Aufgabe in nicht mehr als wenigen Sekunden erledigen können. Das Makro muss relative Referenzen verwenden, da Sie beim Anordnen der Daten die Zeilen nach unten verschieben.
Relative Referenzen verwenden
Gehen Sie wie folgt vor, um den Makrorecorder darüber zu informieren, dass relative Referenzen verwendet werden müssen:
Drücke den VIEW Registerkarte auf der Multifunktionsleiste.
Klicken Macros.
Klicken Use Relative References.
Datenformat vorbereiten
Der erste Schritt beim Anordnen der oben angegebenen Daten besteht darin, das Datenformat in einer Tabelle mit Überschriften zu definieren.
Erstellen Sie die Kopfzeile wie unten gezeigt.
Ein Makro aufnehmen
Zeichnen Sie das Makro wie folgt auf:
Klicken Sie auf Makro aufzeichnen.
Geben Sie dem Makro einen aussagekräftigen Namen, z. B. DataArrange.
Typ = row ()- 3in der Zelle B4. Dies liegt daran, dass die S.-Nr. Die aktuelle Zeilennummer ist - die 3 Zeilen darüber.
Schneiden Sie die Zellen B5, B6, B7, B8 und B9 aus und fügen Sie sie in die Zellen C4 bis C8 ein.
Klicken Sie nun in die Zelle B5. Ihre Tabelle sieht wie unten gezeigt aus.
Der erste Datensatz ist in der ersten Zeile der Tabelle angeordnet. Löschen Sie die Zeilen B6 - B11 und klicken Sie in die Zelle B5.
Sie können sehen, dass die aktive Zelle B5 ist und der nächste Datensatz hier platziert wird.
Beenden Sie die Aufnahme des Makros. Ihr Makro zum Anordnen der Daten ist fertig.
Ein Makro ausführen
Sie müssen das Makro wiederholt ausführen, um die Datenanordnung in der folgenden Tabelle zu vervollständigen.
Die aktive Zelle ist B5. Führen Sie das Makro aus. Der zweite Datensatz wird in der zweiten Zeile der Tabelle angeordnet und die aktive Zelle ist B6.
Führen Sie das Makro erneut aus. Der dritte Datensatz wird in der dritten Zeile der Tabelle angeordnet und die aktive Zelle wird zu B7.
Jedes Mal, wenn Sie das Makro ausführen, wechselt die aktive Zelle zur nächsten Zeile, wodurch die Aufzeichnung der aufgezeichneten Schritte an den entsprechenden Positionen erleichtert wird. Dies ist aufgrund der relativen Verweise im Makro möglich.
Führen Sie das Makro aus, bis alle 280 Datensätze in der Tabelle in 280 Zeilen angeordnet sind. Dieser Vorgang dauert einige Sekunden und da die Schritte automatisiert sind, ist die gesamte Übung fehlerfrei.
Excel speichert die Makros als Excel VBA-Code (Visual Basic für Applikationen). Nach dem Aufzeichnen eines Makros können Sie den generierten Code anzeigen, ändern, einen Teil davon kopieren usw. Sie können sogar selbst einen Makrocode schreiben, wenn Sie mit der Programmierung in VBA vertraut sind.
Wie Sie ein Makro erstellen, indem Sie einen VBA-Code schreiben, erfahren Sie im Kapitel - Erstellen eines Makros mit dem VBA-Editor. Wie Sie ein Makro ändern, indem Sie den VBA-Code bearbeiten, erfahren Sie im Kapitel - Bearbeiten eines Makros. In diesem Kapitel lernen Sie die Excel VBA-Funktionen kennen.
Registerkarte "Entwickler" auf der Multifunktionsleiste
Sie können in VBA über die Registerkarte Entwickler auf der Multifunktionsleiste auf Makrocode zugreifen.
Wenn Sie die Registerkarte "Entwickler" in der Multifunktionsleiste nicht finden, müssen Sie sie wie folgt hinzufügen:
Klicken Sie mit der rechten Maustaste auf das Menüband.
Wählen Customize the Ribbon aus der Dropdown-Liste.
Das Excel Options Das Dialogfeld wird angezeigt.
Wählen Main Tabs von Customize the Ribbon Dropdown-Liste.
Aktivieren Sie das Kontrollkästchen - Entwickler in der Liste der Hauptregisterkarten und klicken Sie auf OK. Die Registerkarte Entwickler wird angezeigt.
Entwicklerbefehle für Makros
Sie müssen die Befehle für Makros auf der Registerkarte Entwickler kennen.
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ENTWICKLER. Die folgenden Befehle sind in der Gruppe Code verfügbar:
- Visual Basic
- Macros
- Makro aufnehmen
- Verwenden Sie relative Referenzen
- Makrosicherheit
Mit dem Befehl Visual Basic wird der VBA-Editor in Excel geöffnet, und mit dem Befehl Makros werden die Makros angezeigt, ausgeführt und gelöscht.
Sie haben bereits in den vorherigen Kapiteln andere Befehle als den VBA-Editor gelernt.
VBA-Editor
VBA Editor oder VBE ist die Entwicklerplattform für VBA in Excel.
Öffnen Sie in diesem Lernprogramm die Arbeitsmappe - MyFirstMacro.xlsm, die Sie zuvor im Kapitel - Erstellen eines einfachen Makros gespeichert haben.
Sie können die VBE auf zwei Arten öffnen:
Option 1 - Klicken Sie in der Gruppe Code auf der Registerkarte Entwickler in der Multifunktionsleiste auf Visual Basic.
Option 2 - Klicken Sie im Dialogfeld Makro, das angezeigt wird, wenn Sie auf die Registerkarte ANSICHT → Makros → Makros anzeigen klicken, auf Bearbeiten
VBE wird in einem neuen Fenster angezeigt.
Der Name Ihres Excel-Makro-aktivierten Arbeitsmappennamens wird mit dem Präfix Microsoft Visual Basic für Applikationen angezeigt.
Folgendes finden Sie in der VBE -
- Projekt-Explorer.
- Properties.
- Modulfenster mit Code.
Projekt-Explorer
Im Projektexplorer finden Sie die VBA-Projektnamen. Unter einem Projekt finden Sie Blatt- und Modulnamen. Wenn Sie auf einen Modulnamen klicken, wird der entsprechende Code rechts in einem Fenster angezeigt.
Eigenschaftenfenster
Die Eigenschaften sind die Parameter für VBA-Objekte. Wenn Sie ein Objekt wie eine Befehlsschaltfläche haben, werden dessen Eigenschaften im Eigenschaftenfenster angezeigt.
Modulfenster mit Code
Der Code eines Makros wird in einem Modul in VBA gespeichert. Wenn Sie ein Makro auswählen und auf Bearbeiten klicken, wird der Code des Makros im entsprechenden Modulfenster angezeigt.
Wenn Sie ein Makro aufzeichnen, speichert Excel es als VBA-Code. Sie können diesen Code im VBA-Editor anzeigen. Sie können den Code verstehen und ändern, wenn Sie über fundierte Kenntnisse in Excel VBA verfügen. Sie können sich auf das Excel VBA-Lernprogramm in dieser Lernprogrammbibliothek beziehen, um einen Überblick über die Sprache zu erhalten.
Sie können den Makrocode jedoch weiterhin im Excel VBA-Editor anzeigen und ihn den Schritten zuordnen, die Sie im Makro aufgezeichnet haben. Sie lernen, wie Sie den Code für das erste Makro anzeigen und verstehen, das Sie in diesem Lernprogramm erstellt haben - MyFirstMacro.
Anzeigen eines Makrocodes im VBA-Editor
Gehen Sie wie folgt vor, um einen Makrocode anzuzeigen:
- Öffnen Sie die Arbeitsmappe, in der Sie das Makro gespeichert haben.
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
- Klicken Sie in der Makroliste auf MyFirstMacro.
- Klicken Sie auf die Schaltfläche Bearbeiten.
Der VBA-Editor wird geöffnet und der Code des Makros MyFirstMacro wird angezeigt.
Verstehen der aufgezeichneten Aktionen als Teile des Codes
Sie können den Makrocode durchsuchen und ihn Ihren aufgezeichneten Schritten zuordnen.
- Beginnen Sie mit dem Lesen des Codes.
- Ordnen Sie den Code den aufgezeichneten Schritten zu.
Scrollen Sie im Code nach unten, um mehr Code anzuzeigen. Alternativ können Sie das Codefenster vergrößern.
Beachten Sie, dass der Code einfach ist. Wenn Sie Excel VBA lernen, können Sie die Makros erstellen, indem Sie den Code in den VBA-Editor schreiben.
Im Kapitel - Erstellen eines Makros mit dem VBA-Editor erfahren Sie, wie Sie einen VBA-Code zum Erstellen eines Makros schreiben.
Angenommen, Sie haben ein Makro erstellt, das Sie mehrmals ausführen müssen. Zum Beispiel die Makros, die Sie für absolute und relative Referenzen erstellt haben. Dann wäre es für Sie einfach, wenn Sie das Makro mit einem Mausklick ausführen könnten. Sie können dies erreichen, indem Sie das Makro einem Objekt wie einer Form, einer Grafik oder einem Steuerelement zuweisen.
In diesem Kapitel erfahren Sie, wie Sie ein Objekt in Ihre Arbeitsmappe aufnehmen und ihm ein Makro zuweisen.
Rufen Sie das Makro auf, das Sie mit relativen Referenzen erstellt haben. Das Makro ordnet die in einer Spalte angegebenen Daten in einer Tabelle an, um die Datenanalyse zu erleichtern.
Zuweisen eines Makros zu einer Form
Sie können eine Form in Ihr Arbeitsblatt einfügen, die in einer aussagekräftigen Form mit selbsterklärendem Text vorliegt. Wenn Sie darauf klicken, wird das ihr zugewiesene Makro ausgeführt.
Drücke den INSERT Registerkarte auf der Multifunktionsleiste.
Klicken Shapes in der Gruppe Illustrationen.
Wählen Sie eine der vorgefertigten Formen aus, die in der Dropdown-Liste angezeigt werden. Zum Beispiel die Flussdiagrammform - Vorbereitung, während Sie die Daten vorbereiten.
Zeichnen Sie die Form und formatieren Sie sie.
Klicken Sie mit der rechten Maustaste auf die Form und wählen Sie Edit Text aus der Dropdown-Liste.
Geben Sie Text in die Form ein - Makro ausführen.
Formatieren Sie den Text.
- Klicken Sie mit der rechten Maustaste auf die Form.
- Wählen Sie Makro zuweisen aus der Dropdown-Liste.
Das Dialogfeld Makro zuweisen wird angezeigt. Klicken Sie auf den Makronamen, dh RelativeMacro, und klicken Sie auf OK.
Das Makro ist der Form zugeordnet.
Klicken Sie in die Zelle, in der Sie das Makro B4 ausführen müssen.
Bewegen Sie den Cursor (Zeiger) auf die Form. Der Cursor (Zeiger) wechselt zu Finger.
Klicken Sie nun auf die Form. Das Makro wird ausgeführt. Wiederholen Sie einfach die Mausklicks, um das Makro mehrmals auszuführen, und Sie haben die Aufgabe, die Daten in wenigen Sekunden in einer Tabelle anzuordnen.
Zuweisen eines Makros zu einer Grafik
Sie können eine Grafik in das Arbeitsblatt einfügen und ihm ein Makro zuweisen. Die Grafik kann ausgewählt werden, um Ihr Makro zu visualisieren. Sie können beispielsweise eine Tabellengrafik erstellen, die darstellt, dass das Makro die Daten in einer Tabelle anordnet.
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte EINFÜGEN.
- Klicken Sie in der Gruppe Illustrationen auf Bilder.
- Wählen Sie eine Datei aus, die Ihre Grafik enthält.
Die restlichen Schritte entsprechen denen im vorherigen Abschnitt.
Zuweisen eines Makros zu einem Steuerelement
Durch das Einfügen eines VBA-Steuerelements und das Zuweisen eines Makros wird Ihre Arbeit professionell. Sie können VBA-Steuerelemente auf der Registerkarte Entwickler in der Multifunktionsleiste einfügen.
Drücke den DEVELOPER Registerkarte auf der Multifunktionsleiste.
Klicken Insert in der Gruppe Steuerelemente.
Wählen Sie das Button-Symbol unter Form Controls aus der Dropdown-Liste wie im folgenden Screenshot gezeigt -
Klicken Sie auf die Zelle im Arbeitsblatt, in die Sie das Schaltflächensteuerelement einfügen möchten. Das Dialogfeld Makro zuweisen wird angezeigt.
Klicken Sie auf den Makronamen und dann auf OK.
Die Steuertaste mit dem zugewiesenen Makro wird eingefügt.
- Klicken Sie mit der rechten Maustaste auf die Schaltfläche.
- Klicken Sie auf Text bearbeiten.
- Typ - Makro ausführen.
- Formatieren Sie den Text und ändern Sie die Größe.
Sie können das Makro beliebig oft ausführen, indem Sie wiederholt auf die Schaltfläche klicken.
Die Verwendung von Formularsteuerelementen ist eine einfache und effektive Möglichkeit, mit dem Benutzer zu interagieren. Weitere Informationen hierzu finden Sie im Kapitel - Interaktion mit dem Benutzer.
Es gibt verschiedene Möglichkeiten, ein Makro in Ihrer Arbeitsmappe auszuführen. Das Makro wurde in Ihrer makrofähigen Arbeitsmappe oder in Ihrer persönlichen Makroarbeitsmappe gespeichert, auf die Sie von jeder zuvor erlernten Arbeitsmappe aus zugreifen können.
Sie können ein Makro folgendermaßen ausführen:
- Ausführen eines Makros über die Registerkarte "Ansicht"
- Ausführen eines Makros durch Drücken von Strg und einer Tastenkombination
- Ausführen eines Makros durch Klicken auf eine Schaltfläche in der Symbolleiste für den Schnellzugriff
- Ausführen eines Makros durch Klicken auf eine Schaltfläche in einer benutzerdefinierten Gruppe auf der Multifunktionsleiste
- Ausführen eines Makros durch Klicken auf ein Grafikobjekt
- Ausführen eines Makros über die Registerkarte "Entwickler"
- Ausführen eines Makros über den VBA-Editor
Ausführen eines Makros auf der Registerkarte "Ansicht"
Sie haben bereits gelernt, ein Makro auf der Registerkarte Ansicht in der Multifunktionsleiste auszuführen. Eine kurze Zusammenfassung -
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
- Klicken Sie auf den Makronamen.
- Klicken Sie auf die Schaltfläche Ausführen.
Ausführen eines Makros mit Tastenkombination
Sie können einem Makro eine Tastenkombination (Strg + Taste) zuweisen. Sie können dies tun, während Sie das Makro in der aufnehmenCreate MacroDialogbox. Andernfalls können Sie dies später in der hinzufügenMacro Options Dialogbox.
Hinzufügen einer Tastenkombination beim Aufnehmen eines Makros
- Klicken Sie auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie in der Dropdown-Liste die Option Makro aufzeichnen.
Das Dialogfeld Makro erstellen wird angezeigt.
- Geben Sie einen Makronamen ein
- Geben Sie einen Buchstaben, z. B. q, in das Feld neben Strg + unter der Tastenkombination ein.
Hinzufügen einer Tastenkombination in den Makrooptionen
- Klicken Sie auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
- Wählen Sie den Makronamen.
- Klicken Sie auf die Schaltfläche Optionen.
Das Dialogfeld Makrooptionen wird angezeigt. Geben Sie einen Buchstaben, z. B. q, in das Feld neben Strg + unter der Tastenkombination ein. OK klicken.
Um das Makro mit der Tastenkombination auszuführen, drücken Sie gleichzeitig die Strg-Taste und die Taste q. Das Makro wird ausgeführt.
Note- Sie können für die Tastenkombination eines Makros beliebige Klein- oder Großbuchstaben verwenden. Wenn Sie eine Strg + Buchstaben-Kombination verwenden, die eine Excel-Tastenkombination ist, überschreiben Sie diese. Beispiele hierfür sind Strg + C, Strg + V, Strg + X usw. Verwenden Sie daher bei der Auswahl der Buchstaben Ihre Gerichtsbarkeit.
Ausführen eines Makros über die Symbolleiste für den Schnellzugriff
Sie können der Symbolleiste für den Schnellzugriff eine Makroschaltfläche hinzufügen und das Makro ausführen, indem Sie darauf klicken. Diese Option ist nützlich, wenn Sie Ihre Makros in einer persönlichen Makro-Arbeitsmappe speichern. Die hinzugefügte Schaltfläche wird in der Symbolleiste für den Schnellzugriff in jeder von Ihnen geöffneten Arbeitsmappe angezeigt, sodass Sie das Makro problemlos ausführen können.
Angenommen, Sie haben ein Makro mit dem Namen MyMacro in Ihrer persönlichen Makro-Arbeitsmappe.
Gehen Sie wie folgt vor, um die Makroschaltfläche zur Symbolleiste für den Schnellzugriff hinzuzufügen:
Klicken Sie mit der rechten Maustaste auf die Symbolleiste für den Schnellzugriff.
Wählen Customize Quick Access Toolbar aus der Dropdown-Liste.
Das Dialogfeld Excel-Optionen wird angezeigt. Wählen Sie Makros aus der Dropdown-Liste unter der Kategorie-Choose commands from.
Eine Liste der Makros wird unter Makros angezeigt.
- Klicken Sie auf PERSONAL.XLSB! MyMacro.
- Klicken Sie auf die Schaltfläche Hinzufügen.
Der Makroname wird auf der rechten Seite mit einem Makroschaltflächenbild angezeigt.
Gehen Sie wie folgt vor, um das Bild der Makrotasten zu ändern:
- Klicken Sie auf den Makronamen im rechten Feld.
- Klicken Sie auf die Schaltfläche Ändern.
Das Modify ButtonDas Dialogfeld wird angezeigt. Wählen Sie ein Symbol aus, um es als Symbol für die Schaltfläche festzulegen.
Ändern Sie den Anzeigenamen, der angezeigt wird, wenn Sie den Zeiger auf das Schaltflächenbild in der Symbolleiste für den Schnellzugriff auf einen aussagekräftigen Namen setzen, z. B. "In diesem Beispiel MyMacro ausführen". OK klicken.
Der Makroname und das Symbolsymbol ändern sich im rechten Bereich. OK klicken.
Die Makroschaltfläche wird in der Symbolleiste für den Schnellzugriff angezeigt, und der Name der Makroanzeige wird angezeigt, wenn Sie den Zeiger auf die Schaltfläche setzen.
Um das Makro auszuführen, klicken Sie einfach auf die Makro-Schaltfläche in der Symbolleiste für den Schnellzugriff.
Ausführen eines Makros in einer benutzerdefinierten Gruppe
Sie können eine benutzerdefinierte Gruppe und eine benutzerdefinierte Schaltfläche in der Multifunktionsleiste hinzufügen und der Schaltfläche Ihr Makro zuweisen.
- Klicken Sie mit der rechten Maustaste auf das Menüband.
- Wählen Sie in der Dropdown-Liste die Option Multifunktionsleiste anpassen aus.
Das Excel Options Das Dialogfeld wird angezeigt.
- Wählen Sie unter Multifunktionsleiste anpassen die Option Hauptregisterkarten.
- Klicken Sie auf Neue Registerkarte.
Die neue Registerkarte (Benutzerdefiniert) wird in der Liste der Hauptregisterkarten angezeigt.
- Klicken Sie auf Neue Registerkarte (Benutzerdefiniert).
- Klicken Sie auf die Schaltfläche Neue Gruppe.
Die neue Gruppe (Benutzerdefiniert) wird unter der Registerkarte Neu (Benutzerdefiniert) angezeigt.
- Klicken Sie auf Neue Registerkarte (Benutzerdefiniert).
- Klicken Sie auf die Schaltfläche Umbenennen.
Das Dialogfeld Umbenennen wird angezeigt. Geben Sie den Namen für Ihre benutzerdefinierte Registerkarte ein, die in den Hauptregisterkarten der Multifunktionsleiste angezeigt wird, z. B. "Meine Makros", und klicken Sie auf "OK".
Note- Alle Hauptregisterkarten in der Multifunktionsleiste sind in Großbuchstaben geschrieben. Sie können nach eigenem Ermessen Groß- oder Kleinbuchstaben verwenden. Ich habe Kleinbuchstaben mit Großschreibung von Wörtern gewählt, damit sie in den Standardregistern hervorgehoben werden.
Der neue Registerkartenname ändert sich in Meine Makros (Benutzerdefiniert).
- Klicken Sie auf Neue Gruppe (Benutzerdefiniert).
- Klicken Sie auf die Schaltfläche Umbenennen.
Das RenameDas Dialogfeld wird angezeigt. Geben Sie den Gruppennamen in das Dialogfeld Anzeigename ein und klicken Sie auf OK.
Der neue Gruppenname ändert sich in Persönliche Makros (benutzerdefiniert).
Klicken Sie im linken Bereich unter auf Makros Choose commands from.
- Wählen Sie Ihren Makronamen aus, sagen Sie - MyFirstMacro aus der Makroliste.
- Klicken Sie auf die Schaltfläche Hinzufügen.
Das Makro wird unter der Gruppe Persönliche Makros (Benutzerdefiniert) hinzugefügt.
- Klicken Sie in der Liste auf Meine Makros (Benutzerdefiniert).
- Klicken Sie auf die Pfeile, um die Registerkarte nach oben oder unten zu verschieben.
Die Position der Registerkarte in der Liste der Hauptregisterkarten bestimmt, wo sie auf der Multifunktionsleiste platziert wird. OK klicken.
Ihre benutzerdefinierte Registerkarte - Meine Makros wird in der Multifunktionsleiste angezeigt.
Klicken Sie auf die Registerkarte - Meine Makros. Die Gruppe "Persönliche Makros" wird auf der Multifunktionsleiste angezeigt. MyFirstMacro wird in der Gruppe Persönliche Makros angezeigt. Um das Makro auszuführen, klicken Sie einfach in der Gruppe Persönliche Makros auf MyFirstMacro.
Ausführen eines Makros durch Klicken auf ein Objekt
Sie können ein Objekt wie eine Form, eine Grafik oder ein VBA-Steuerelement in Ihr Arbeitsblatt einfügen und ihm ein Makro zuweisen. Um das Makro auszuführen, klicken Sie einfach auf das Objekt.
Ausführliche Informationen zum Ausführen eines Makros mit Objekten finden Sie im Kapitel - Zuweisen von Makros zu Objekten.
Ausführen eines Makros auf der Registerkarte "Entwickler"
Sie können ein Makro auf der Registerkarte Entwickler ausführen.
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte Entwickler.
- Klicken Sie auf Makros.
Das Dialogfeld Makro wird angezeigt. Klicken Sie auf den Makronamen und dann auf Ausführen.
Ausführen eines Makros über den VBA-Editor
Sie können ein Makro im VBA-Editor wie folgt ausführen:
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
Sie können ein Makro erstellen, indem Sie den Code in den VBA-Editor schreiben. In diesem Kapitel erfahren Sie, wo und wie Sie den Code für ein Makro schreiben.
VBA-Objekte und -Module
Bevor Sie mit dem Codieren für ein Makro beginnen, sollten Sie sich mit den VBA-Objekten und -Modulen vertraut machen.
- Öffnen Sie die makrofähige Arbeitsmappe mit Ihrem ersten Makro.
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ENTWICKLER.
- Klicken Sie in der Gruppe Code auf Visual Basic.
Das VBA-Editorfenster wird geöffnet.
Im Projekt-Explorer-Fenster sehen Sie Folgendes:
Ihre makrofähige Arbeitsmappe - MyFirstMacro.xlsm wird als VBA-Projekt angezeigt.
Alle Arbeitsblätter und die Arbeitsmappe werden unter dem Projekt als Microsoft Excel-Objekte angezeigt.
Modul1 wird unter Module angezeigt. Ihr Makrocode befindet sich hier.
Klicken Sie auf Modul1.
Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ansicht.
Wählen Sie Code aus der Dropdown-Liste.
Der Code Ihres Makros wird angezeigt.
Erstellen eines Makros durch Codierung
Erstellen Sie als Nächstes ein zweites Makro in derselben Arbeitsmappe - diesmal durch Schreiben von VBA-Code.
Sie können dies in zwei Schritten tun -
Fügen Sie eine Befehlsschaltfläche ein.
Schreiben Sie den Code mit den Aktionen, die ausgeführt werden sollen, wenn Sie auf die Befehlsschaltfläche klicken.
Einfügen einer Befehlsschaltfläche
Erstellen Sie ein neues Arbeitsblatt.
Klicken Sie in das neue Arbeitsblatt.
Klicken Sie auf der Multifunktionsleiste auf die Schaltfläche ENTWICKLER.
Klicken Sie in der Gruppe Steuerelemente auf Einfügen.
Wählen Sie das Schaltflächensymbol aus Form Controls.
- Klicken Sie in das Arbeitsblatt, in dem Sie die Befehlsschaltfläche platzieren möchten.
- Das Dialogfeld Makro zuweisen wird angezeigt.
Der Visual Basic-Editor wird angezeigt.
Sie werden Folgendes beobachten -
- Ein neues Modul - Modul2 wird in den Projektexplorer eingefügt.
- Das Codefenster mit dem Titel Module2 (Code) wird angezeigt.
- Eine Unterprozedur Button1_Click () wird in den Module2-Code eingefügt.
Codierung des Makros
Ihre Codierung wird zur Hälfte vom VBA-Editor selbst durchgeführt.
Geben Sie beispielsweise MsgBox ein “Best Wishes to You!”in der Unterprozedur Button1_Click (). Ein Meldungsfeld mit der angegebenen Zeichenfolge wird angezeigt, wenn Sie auf die Befehlsschaltfläche klicken.
Das ist es! Ihr Makrocode ist zur Ausführung bereit. Wie Sie wissen, muss VBA-Code nicht kompiliert werden, da er mit einem Interpreter ausgeführt wird.
Ausführen des Makros über den VBA-Editor
Sie können Ihren Makrocode im VBA-Editor selbst testen.
Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
Wählen Sie Run Sub / UserForm aus der Dropdown-Liste. Das Meldungsfeld mit der von Ihnen eingegebenen Zeichenfolge wird in Ihrem Arbeitsblatt angezeigt.
Sie können sehen, dass die Schaltfläche ausgewählt ist. Klicken Sie im Meldungsfeld auf OK. Sie werden zum VBA-Editor zurückgeführt.
Ausführen des Makros über das Arbeitsblatt
Sie können das von Ihnen codierte Makro beliebig oft im Arbeitsblatt ausführen.
- Klicken Sie irgendwo auf das Arbeitsblatt.
- Drück den Knopf. Das Feld Nachricht wird im Arbeitsblatt angezeigt.
Sie haben ein Makro erstellt, indem Sie VBA-Code geschrieben haben. Wie Sie sehen können, ist die VBA-Codierung einfach.
Sie haben im vorherigen Kapitel gelernt, wie man Makrocode im VBA-Editor schreibt. Sie können den Makrocode bearbeiten, ein Makro umbenennen und ein Makro löschen.
Wenn Sie Excel VBA beherrschen, ist das Schreiben von Code oder das Ändern von Code für ein Makro eine triviale Aufgabe. Sie können den Makrocode beliebig bearbeiten. Wenn Sie nur wenige einfache Änderungen am Makrocode vornehmen möchten, können Sie den Makrocode sogar von einem Ort an einen anderen kopieren.
Kopieren eines Makrocodes
Sie haben zwei Makros erstellt - MyFirstMacro und Button1_Click in der makrofähigen Arbeitsmappe MyFirstMacro.xlsm. Sie haben das erste Makro durch Aufzeichnen der Schritte und das zweite Makro durch Schreiben von Code erstellt. Sie können Code vom ersten Makro in das zweite Makro kopieren.
Öffnen Sie die Arbeitsmappe MyFirstMacro.xlsm.
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte Entwickler.
Klicken Sie auf Visual Basic. Der Visual Basic-Editor wird geöffnet.
Öffnen Sie den Code für Modul1 (MyFirstMacro-Makrocode) und Modul2 (Button1_Click () -Makrocode).
Klicken Sie in der Multifunktionsleiste auf die Registerkarte Fenster.
Wählen Sie Horizontal kacheln aus der Dropdown-Liste.
Sie können den Code der beiden Makros in den gekachelten Fenstern anzeigen.
Kopieren Sie die MsgBox-Zeile in den Module2-Code.
Fügen Sie es über dieser Linie ein.
Ändern Sie die Zeichenfolge als -
MsgBox "Hallo Welt!"
Kopieren Sie den folgenden Code aus Modul1.
Fügen Sie es in den Module2-Code zwischen den beiden MsgBox-Codezeilen ein.
Klicken Sie auf das Symbol Speichern, um den Code zu speichern.
Klicken Sie in der Excel-Tabelle auf die Schaltfläche. Ein Meldungsfeld mit der Meldung - Hallo Welt! OK klicken.
Die Tabellendaten werden angezeigt (entsprechend dem von Ihnen kopierten Code) und das Meldungsfeld mit der Meldung - Best Wishes to You!
Sie können den Code in nur wenigen Schritten ändern. Dies ist die einfachste Aufgabe für einen Anfänger.
Makro umbenennen
Angenommen, Sie möchten das bearbeitete Makro von einem anderen Arbeitsblatt als dem mit der Befehlsschaltfläche ausführen. Sie können dies unabhängig vom Klicken auf die Schaltfläche tun, indem Sie das Makro umbenennen.
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
- Klicken Sie auf den Makronamen - Button1_Click.
- Klicken Sie auf die Schaltfläche Bearbeiten.
Der Makrocode wird im VBA-Editor angezeigt.
Ändern Sie den Namen, der in der Unterzeile von Button1_Click angezeigt wird, in RenamedMacro. Lassen Sie Sub und Klammern unverändert.
Öffnen Sie das Dialogfeld Makro. Der Makroname wird beim Umbenennen angezeigt.
- Klicken Sie auf RenamedMacro.
- Klicken Sie auf die Schaltfläche Ausführen. Das Makro wird ausgeführt. Jetzt ist ein Knopfdruck nicht mehr erforderlich.
Makro löschen
Sie können ein Makro löschen, das Sie aufgezeichnet oder codiert haben.
- Öffnen Sie das Dialogfeld Makros.
- Klicken Sie auf den Makronamen.
- Klicken Sie auf die Schaltfläche Löschen.
Das Delete Bestätigungsmeldung wird angezeigt.
Klicken Yeswenn Sie sicher sind, das Makro zu löschen. Andernfalls klicken Sie auf Nein.
Manchmal müssen Sie möglicherweise wiederholt Informationen von anderen sammeln. Excel VBA bietet Ihnen eine einfache Möglichkeit, diese Aufgabe zu erledigen.UserForm. Wie jedes andere Formular, das Sie ausfüllen, macht UserForm es einfach zu verstehen, welche Informationen bereitgestellt werden sollen. UserForm ist benutzerfreundlich, da die bereitgestellten Steuerelemente selbsterklärend sind und bei Bedarf zusätzliche Anweisungen enthalten.
Der Hauptvorteil von UserForm besteht darin, dass Sie Zeit sparen können, die Sie dafür aufwenden, was und wie die Informationen ausgefüllt werden sollen.
Erstellen einer UserForm
Gehen Sie wie folgt vor, um eine UserForm zu erstellen:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ENTWICKLER.
- Klicken Sie auf Visual Basic. Ein Visual Basic-Fenster für die Arbeitsmappe wird geöffnet.
- Klicken Sie auf Einfügen,
- Wählen Sie UserForm aus der Dropdown-Liste.
Die UserForm wird auf der rechten Seite des Fensters angezeigt.
Grundlegendes zur UserForm
Maximieren Sie das Fenster UserForm.xlsx - UserForm1.
Sie befinden sich jetzt im Entwurfsmodus. Sie können Steuerelemente in die UserForm einfügen und Code für die jeweiligen Aktionen schreiben. Die Steuerelemente sind in der ToolBox verfügbar. Die Eigenschaften von UserForm befinden sich im Eigenschaftenfenster. UserForm1 (Beschriftung des UserForm) wird im Projektexplorer unter Formulare angegeben.
- Ändern Sie die Beschriftung der UserForm im Eigenschaftenfenster in Projektbericht - Täglich.
- Ändern Sie den Namen der UserForm in ProjectReport.
Die Änderungen werden in UserForm, Eigenschaften und Projektexplorer angezeigt.
Steuerelemente in der ToolBox
Eine UserForm hat verschiedene Komponenten. Wenn Sie auf eine der Komponenten klicken, erhalten Sie entweder Anweisungen dazu, was und wie die Informationen bereitgestellt werden sollen, oder Sie erhalten Optionen (Auswahlmöglichkeiten) zur Auswahl. All dies wird mithilfe von ActiveX-Steuerelementen in der ToolBox der UserForm bereitgestellt.
Excel bietet zwei Arten von Steuerelementen: Formularsteuerelemente und ActiveX-Steuerelemente. Sie müssen den Unterschied zwischen diesen beiden Steuerelementtypen verstehen.
Formularsteuerelemente
Formularsteuerelemente sind die ursprünglichen Excel-Steuerelemente, die mit früheren Versionen von Excel kompatibel sind, beginnend mit Excel Version 5.0. Formularsteuerelemente sind auch für die Verwendung in XLM-Makroblättern vorgesehen.
Sie können Makros mithilfe von Formularsteuerelementen ausführen. Sie können einem Steuerelement ein vorhandenes Makro zuweisen oder ein neues Makro schreiben oder aufzeichnen. Wenn Sie auf das Steuerelement klicken, wird das Makro angezeigt. Sie haben bereits gelernt, wie Sie eine Befehlsschaltfläche aus Formularsteuerelementen in das Arbeitsblatt einfügen, um ein Makro auszuführen. Diese Steuerelemente können jedoch nicht zu einer UserForm hinzugefügt werden.
ActiveX-Steuerelemente
ActiveX-Steuerelemente können in VBA UserForms verwendet werden. ActiveX-Steuerelemente verfügen über umfangreiche Eigenschaften, mit denen Sie Erscheinungsbild, Verhalten, Schriftarten und andere Merkmale anpassen können.
Sie haben die folgenden ActiveX-Steuerelemente in der UserForm ToolBox -
- Pointer
- Label
- TextBox
- ComboBox
- ListBox
- CheckBox
- OptionButton
- Frame
- ToggleButton
- CommandButton
- TabStrip
- MultiPage
- ScrollBar
- SpinButton
- Image
Zusätzlich zu diesen Steuerelementen bietet Visual Basic die MsgBox-Funktion, mit der Sie Nachrichten anzeigen und / oder den Benutzer zu einer Aktion auffordern können.
In den nächsten Abschnitten werden Sie diese Steuerelemente und MsgBox verstehen. Anschließend können Sie auswählen, welche dieser Steuerelemente zum Entwerfen Ihrer UserForm erforderlich sind.
Etikette
Sie können Etiketten zu Identifikationszwecken verwenden, indem Sie beschreibenden Text wie Titel, Beschriftungen und / oder kurze Anweisungen anzeigen.
Example
Textfeld
Sie können ein Textfeld verwenden, das ein rechteckiges Feld ist, um Text einzugeben, anzuzeigen oder zu bearbeiten. Sie können eine TextBox auch als statisches Textfeld verwenden, das schreibgeschützte Informationen enthält.
Example
Listenfeld
Sie können ein Listenfeld verwenden, um eine Liste mit einem oder mehreren Textelementen anzuzeigen, aus denen ein Benutzer auswählen kann. Verwenden Sie ein Listenfeld, um eine große Anzahl von Auswahlmöglichkeiten anzuzeigen, die sich in Anzahl oder Inhalt unterscheiden.
- Fügen Sie eine ListBox in die UserForm ein.
- Klicken Sie auf die ListBox.
- Geben Sie ProjectCodes for Name in das Eigenschaftenfenster der ListBox ein.
Es gibt drei Arten von Listenfeldern:
Single-selection List box- Ein Listenfeld mit einfacher Auswahl ermöglicht nur eine Auswahl. In diesem Fall ähnelt ein Listenfeld einer Gruppe von Optionsfeldern, mit der Ausnahme, dass ein Listenfeld eine große Anzahl von Elementen effizienter verarbeiten kann.
Multiple selection List Box - Ein Listenfeld mit Mehrfachauswahl ermöglicht entweder eine Auswahl oder zusammenhängende (benachbarte) Auswahlmöglichkeiten.
Extended-selection List Box - Ein Listenfeld mit erweiterter Auswahl ermöglicht eine Auswahl, zusammenhängende Auswahlmöglichkeiten und nicht zusammenhängende (oder nicht zusammenhängende) Auswahlmöglichkeiten.
Sie können einen dieser Arten von Listenfeldern im Eigenschaftenfenster auswählen.
- Klicken Sie mit der rechten Maustaste auf die UserForm.
- Wählen Sie Code anzeigen aus der Dropdown-Liste. Das Codefenster von UserForm wird geöffnet.
- Klicken Sie oben rechts im Codefenster auf Initialisieren.
- Geben Sie unter Private Sub UserForm_Initialize () Folgendes ein.
ProjectCodes.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
Als Nächstes können Sie Code für Aktionen zum Auswählen eines Elements in der Liste schreiben. Andernfalls können Sie nur den ausgewählten Text anzeigen, was beim Ausfüllen des Projektcodes im Bericht der Fall ist.
Kombinationsfeld
Sie können verwenden ComboBoxDadurch wird ein Textfeld mit einem Listenfeld kombiniert, um ein Dropdown-Listenfeld zu erstellen. Ein Kombinationsfeld ist kompakter als ein Listenfeld, der Benutzer muss jedoch auf den Abwärtspfeil klicken, um die Liste der Elemente anzuzeigen. Verwenden Sie ein Kombinationsfeld, um nur ein Element aus der Liste auszuwählen.
- Fügen Sie eine ComboBox in die UserForm ein.
- Klicken Sie auf die ComboBox.
- Geben Sie ProjectCodes2 for Name in das Eigenschaftenfenster der ComboBox ein.
- Klicken Sie mit der rechten Maustaste auf die UserForm.
- Wählen Sie Code anzeigen aus der Dropdown-Liste.
- Das Codefenster von UserForm wird geöffnet.
Geben Sie Folgendes ein, wie unten gezeigt.
ProjectCodes2.List = Array ("Proj2016-1", "Proj2016-2", "Proj2016-3", "Proj20164", "Proj2016-5")
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
Klicken Sie auf den Abwärtspfeil, um die Liste der Elemente anzuzeigen.
Klicken Sie auf das gewünschte Element, z. B. Project2016-5. Die ausgewählte Option wird im Kombinationsfeld angezeigt.
CheckBox
Sie können Kontrollkästchen verwenden, um eine oder mehrere Optionen auszuwählen, die durch Klicken in die Kontrollkästchen angezeigt werden. Die Optionen haben Beschriftungen und Sie können klar visualisieren, welche Optionen ausgewählt sind.
Ein Kontrollkästchen kann zwei Zustände haben -
- Ausgewählt (aktiviert), gekennzeichnet durch ein Häkchen im Feld
- Gelöscht (ausgeschaltet), gekennzeichnet durch ein Kästchen
Sie können Kontrollkästchen für die Auswahl von Optionen in einem Kombinationsfeld verwenden, um Platz zu sparen. In einem solchen Fall kann das Kontrollkästchen auch einen dritten Status haben -
Gemischt, dh eine Kombination von Ein- und Ausschaltzuständen, gekennzeichnet durch einen schwarzen Punkt im Feld. Dies wird angezeigt, um Mehrfachauswahl im Kombinationsfeld mit Kontrollkästchen anzuzeigen.
Fügen Sie wie unten gezeigt Kontrollkästchen in die UserForm ein.
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
- Klicken Sie in die Felder für Ihre ausgewählten Optionen.
Optionsschaltfläche
Sie können ein Optionsfeld verwenden, das auch als Optionsfeld bezeichnet wird, um eine einzelne Auswahl innerhalb einer begrenzten Anzahl sich gegenseitig ausschließender Auswahlmöglichkeiten zu treffen. Ein Optionsfeld ist normalerweise in einem Gruppenfeld oder einem Rahmen enthalten.
Ein Optionsfeld wird durch einen kleinen Kreis dargestellt. Ein Optionsfeld kann einen der folgenden zwei Zustände haben:
- Ausgewählt (aktiviert), gekennzeichnet durch einen Punkt im Kreis
- Gelöscht (ausgeschaltet), gekennzeichnet durch ein Leerzeichen
Rahmen
Sie können ein Frame-Steuerelement verwenden, das auch als Gruppenfeld bezeichnet wird, um verwandte Steuerelemente in einer visuellen Einheit zu gruppieren. In der Regel werden Optionsfelder, Kontrollkästchen oder eng verwandte Inhalte in einem Frame-Steuerelement gruppiert.
Ein Rahmensteuerelement wird durch ein rechteckiges Objekt mit einer optionalen Beschriftung dargestellt.
Fügen Sie einen Rahmen mit der Überschrift "Auswahl" ein.
Fügen Sie zwei Optionsfelder mit den Beschriftungen „Ja“ und „Nein“ in das Frame-Steuerelement ein. Die Optionen Ja und Nein schließen sich gegenseitig aus.
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
- Klicken Sie auf die ausgewählte Option.
Umschaltknopf
Sie können eine Umschalttaste verwenden, um einen Status wie Ja oder Nein oder einen Modus wie Ein oder Aus anzuzeigen. Die Schaltfläche wechselt beim Klicken zwischen einem aktivierten und einem deaktivierten Status.
Fügen Sie eine Umschalttaste in UserForm ein, wie unten gezeigt -
Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
Wählen Sie Run Sub / UserForm aus der Dropdown-Liste. Die Umschalttaste ist standardmäßig aktiviert.
Klicken Sie auf die Umschaltfläche. Die Umschalttaste wird deaktiviert.
Wenn Sie erneut auf die Umschalttaste klicken, wird sie aktiviert.
Befehlsschaltfläche
Sie können eine Befehlsschaltfläche verwenden, um ein Makro auszuführen, das einige Aktionen ausführt, wenn der Benutzer darauf klickt. Sie haben bereits gelernt, wie Sie mit einer Befehlsschaltfläche in einem Arbeitsblatt ein Makro ausführen.
Die Befehlstaste wird auch als Drucktaste bezeichnet. Fügen Sie eine Befehlsschaltfläche in die UserForm ein, wie unten gezeigt -
- Klicken Sie mit der rechten Maustaste auf die Befehlsschaltfläche.
- Geben Sie den folgenden Code in den Unterbefehl Commandbutton1_click () ein.
ProjectCodes2.DropDown
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
Klicken Sie auf die Befehlsschaltfläche. Die Dropdown-Liste des Kombinationsfelds wird geöffnet, da es sich um die Aktion handelt, die Sie in den Code geschrieben haben.
TabStrip
Sie können eine Registerkartenleiste einfügen, die Excel-Registerkarten in der UserForm ähnelt.
Scrollleiste
Sie können eine Bildlaufleiste verwenden, um durch einen Wertebereich zu scrollen, indem Sie auf die Bildlaufpfeile klicken oder das Bildlauffeld ziehen.
Fügen Sie eine Bildlaufleiste in die UserForm ein, indem Sie sie an der gewünschten Position zeichnen und die Länge der Bildlaufleiste anpassen.
- Klicken Sie mit der rechten Maustaste auf die Bildlaufleiste.
- Wählen Sie Code anzeigen aus der Dropdown-Liste. Das Code-Fenster wird geöffnet.
- Fügen Sie die folgende Zeile unter Unter ScrollBar1_Scroll () hinzu.
TextBox2.Text = "Scrolling Values"
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
Ziehen Sie das Bildlauffeld. Die Text - Bildlaufwerte werden im Textfeld angezeigt, wie Sie es als Aktion für den Bildlauf in der Bildlaufleiste angegeben haben.
MsgBox ()
Mit der Funktion MsgBox () können Sie eine Nachricht anzeigen, wenn Sie auf etwas klicken. Dies kann eine Richtlinie oder eine Information oder eine Warnung oder eine Fehlerwarnung sein.
Beispielsweise können Sie eine Meldung anzeigen, dass Werte gescrollt werden, wenn Sie mit dem Scrollen des Bildlauffelds beginnen.
Meldungsfeld-Symbolanzeigen
Sie können Meldungsfeldsymbole verwenden, die die bestimmte Nachricht darstellen. Sie haben die mehreren Meldungsfeldsymbole, die Ihrem Zweck entsprechen -
- Geben Sie den folgenden Code unter ScrollBar1_scroll ein.
MsgBox "Select Ok or Cancel", vbOKCancel, "OK - Cancel Message"
MsgBox "It's an Error!", vbCritical, "Run time result"
MsgBox "Why this value", vbQuestion, "Run time result"
MsgBox "Value Been for a Long Time", vbInformation, "Run time result"
MsgBox "Oh Is it so", vbExclamation, "Run time result"
- Klicken Sie in der Multifunktionsleiste auf die Registerkarte Ausführen.
- Wählen Sie Run Sub / UserForm aus der Dropdown-Liste.
- Ziehen Sie das Bildlauffeld.
Sie erhalten nacheinander die folgenden Meldungsfelder.
UserForm entwerfen
Jetzt haben Sie ein Verständnis für die verschiedenen Steuerelemente, die Sie in einer UserForm verwenden können. Wählen Sie die Steuerelemente aus, gruppieren Sie sie bei Bedarf und ordnen Sie sie in der UserForm nach einer sinnvollen Reihenfolge an. Schreiben Sie die erforderlichen Aktionen als Code, der den jeweiligen Steuerelementen entspricht.
Ein Beispiel für UserForm finden Sie im VBA-Lernprogramm in dieser Lernprogrammbibliothek.
Sie haben erfahren, dass das Makro in Excel als VBA-Code gespeichert ist. Sie haben auch gelernt, dass Sie direkt Code schreiben können, um ein Makro im VBA-Editor zu erstellen. Wie bei jedem Code kann jedoch auch der Makrocode Fehler aufweisen und das Makro wird möglicherweise nicht wie erwartet ausgeführt.
Dazu muss der Code überprüft werden, um die Fehler zu finden und zu beheben. Der Begriff, der für diese Aktivität in der Softwareentwicklung verwendet wird, ist Debugging.
VBA-Debugging
Mit dem VBA-Editor können Sie die Ausführung des Codes anhalten und alle erforderlichen Debug-Aufgaben ausführen. Im Folgenden finden Sie einige der Debugging-Aufgaben, die Sie ausführen können.
- Code durchgehen
- Haltepunkte verwenden
- Sichern oder Vorwärtsbewegen im Code
- Nicht durch jede Codezeile treten
- Abfragen beim Durchlaufen des Codes
- Die Ausführung anhalten
Dies sind nur einige der Aufgaben, die Sie möglicherweise in der Debugging-Umgebung von VBA ausführen.
Den Code durchgehen
Das erste, was Sie zum Debuggen tun müssen, ist, den Code während der Ausführung zu durchlaufen. Wenn Sie eine Vorstellung davon haben, welcher Teil des Codes wahrscheinlich den Fehler verursacht, können Sie zu dieser Codezeile springen. Andernfalls können Sie den Code zeilenweise ausführen, im Code sichern oder vorwärts gehen.
Sie können den Code entweder über das Dialogfeld "Makro" in Ihrer Arbeitsmappe oder über den VBA-Editor selbst aufrufen.
Stepping into the code from the workbook
Gehen Sie wie folgt vor, um aus der Arbeitsmappe in den Code zu gelangen:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Wählen Sie Makros anzeigen aus der Dropdown-Liste.
Das Dialogfeld Makro wird angezeigt.
- Klicken Sie auf den Makronamen.
- Klicken Sie auf die Schaltfläche Schritt in.
Der VBA-Editor wird geöffnet und der Makrocode wird im Codefenster angezeigt. Die erste Zeile im Makrocode wird gelb hervorgehoben.
Stepping into the code from the VBA editor
Gehen Sie wie folgt vor, um über den VBA-Editor in den Code zu gelangen:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ENTWICKLER.
- Klicken Sie auf Visual Basic. Der VBA-Editor wird geöffnet.
- Klicken Sie auf das Modul, das den Makrocode enthält.
Der Makrocode wird im Codefenster angezeigt.
Klicken Sie auf der Multifunktionsleiste auf die Registerkarte Debug.
Wählen Step into aus der Dropdown-Liste.
Die erste Zeile im Makrocode wird hervorgehoben. Der Code befindet sich im Debugging-Modus und die Optionen in der Dropdown-Liste Debuggen werden aktiv.
Sichern oder Vorwärtsbewegen im Code
Sie können im Code vorwärts oder rückwärts gehen, indem Sie Step Over oder Step Out auswählen.
Nicht durch jede Codezeile treten
Sie können vermeiden, durch jeden Zeilencode zu gehen, wenn Sie einen potenziellen Teil des Codes identifizieren, der besprochen werden muss, indem Sie Auf Cursor ausführen auswählen.
Haltepunkte verwenden
Alternativ können Sie Haltepunkte in bestimmten Codezeilen festlegen und den Code ausführen, wobei Sie die Ergebnisse an jedem Haltepunkt beobachten. Sie können einen Haltepunkt umschalten und bei Bedarf alle Haltepunkte löschen.
Verwenden von Watch
Sie können beim Debuggen eine Überwachung hinzufügen, um einen Ausdruck auszuwerten und die Ausführung zu stoppen, wenn eine Variable einen bestimmten Wert erreicht. Dies bedeutet, dass Sie einen Überwachungsausdruck konfigurieren, der überwacht wird, bis er wahr ist. Anschließend wird das Makro angehalten und Sie werden im Pausenmodus belassen. VBA bietet Ihnen verschiedene Uhrentypen zur Auswahl, um das zu erreichen, wonach Sie suchen.
Die Ausführung anhalten
Wenn Sie während des Debuggens zu irgendeinem Zeitpunkt einen Hinweis darauf gefunden haben, was falsch läuft, können Sie die Ausführung anhalten, um sie weiter zu entschlüsseln.
Wenn Sie ein erfahrener Entwickler sind, ist Ihnen die Debugging-Terminologie vertraut, und die Debugging-Optionen des VBA-Editors erleichtern Ihnen das Leben. Selbst wenn Sie VBA gelernt und den Code verstanden haben, wird es nicht lange dauern, diese Fähigkeit zu beherrschen.
Sie können ein Makro aufzeichnen und unter dem Namen Auto_Open speichern, um es auszuführen, wenn Sie die Arbeitsmappe öffnen, die dieses Makro enthält.
Sie können für denselben Zweck auch VBA-Code mit dem Open-Ereignis der Arbeitsmappe schreiben. Das Open-Ereignis führt den Code in der Unterprozedur Workbook_Open () jedes Mal aus, wenn Sie die Arbeitsmappe öffnen.
Aufzeichnen eines Auto_Open-Makros
Sie können ein Auto_Run-Makro wie folgt aufzeichnen:
- Klicken Sie auf der Multifunktionsleiste auf die Registerkarte ANSICHT.
- Klicken Sie auf Makros.
- Klicken Sie auf Makro aufzeichnen. Das Dialogfeld Makro aufzeichnen wird angezeigt.
- Geben Sie Auto_Run als Makronamen ein.
- Geben Sie eine Beschreibung ein und klicken Sie auf OK.
- Starten Sie die Aufnahme des Makros.
- Höre auf, aufzunehmen.
- Speichern Sie die Arbeitsmappe als makrofähige Arbeitsmappe.
- Schließen Sie die Arbeitsmappe.
- Öffnen Sie die Arbeitsmappe. Das Makro Auto_Run wird automatisch ausgeführt.
Wenn Excel ohne Ausführen eines Auto_Open-Makros gestartet werden soll, halten Sie beim Starten von Excel die UMSCHALTTASTE gedrückt.
Einschränkungen des Auto_Open-Makros
Im Folgenden sind die Einschränkungen des Auto_Open-Makros aufgeführt:
Wenn die Arbeitsmappe, in der Sie das Auto_Open-Makro gespeichert haben, Code für das Open-Ereignis der Arbeitsmappe enthält, überschreibt der Code für das Open-Ereignis die Aktionen im Auto_Open-Makro.
Ein Auto_Open-Makro wird ignoriert, wenn die Arbeitsmappe geöffnet wird, indem Code ausgeführt wird, der die Open-Methode verwendet.
Ein Auto_Open-Makro wird ausgeführt, bevor andere Arbeitsmappen geöffnet werden. Wenn Sie also Aktionen aufzeichnen, die Excel in der Standardarbeitsmappe Book1 oder in einer Arbeitsmappe ausführen soll, die aus dem XLStart-Ordner geladen wird, schlägt das Auto_Open-Makro beim Neustart von Excel fehl, da das Makro ausgeführt wird, bevor die Standard- und Startarbeitsmappen geöffnet werden .
Wenn Sie auf eine dieser Einschränkungen stoßen, müssen Sie anstelle der Aufzeichnung eines Auto_Open-Makros einen Code für das Open-Ereignis schreiben, wie im nächsten Abschnitt beschrieben.
VBA-Code für offenes Ereignis einer Arbeitsmappe
Sie können Code schreiben, der ausgeführt wird, wenn Sie eine Arbeitsmappe öffnen. VBA bietet Ihnen ein Ereignis namens open, das eine VBA-Prozedur für die Aktionen enthält, die beim Öffnen einer Arbeitsmappe ausgeführt werden sollen.
Öffnen Sie die Arbeitsmappe, in der Sie das Makro gespeichert haben, das Sie für die absoluten Referenzen geschrieben haben - Report_ProjectXYZ. Wenn dieses Makro ausgeführt wird, wird der Arbeitsmappe ein neues Arbeitsblatt hinzugefügt, und die Projektberichtsstruktur wird im neuen Arbeitsblatt angezeigt.
Sie können einen Makrocode schreiben, der diese Aktionen beim Öffnen der Arbeitsmappe ausführt. Das heißt, wenn Sie die Arbeitsmappe Projektbericht öffnen, steht Ihnen ein neues Arbeitsblatt mit der Berichtsstruktur zur Verfügung, in das Sie die Details eingeben können.
Befolgen Sie die unten angegebenen Anweisungen im VBA-Editor
Doppelklicken Sie im Projektexplorer auf ThisWorkbook.
Wählen Sie im Codefenster Arbeitsmappe in der linken Dropdown-Liste und Öffnen in der rechten Dropdown-Liste. Sub Workbook_Open () wird angezeigt.
Klicken Sie im Projektexplorer auf Module.
Doppelklicken Sie auf den Modulnamen, der den Makrocode enthält.
Kopieren Sie den Makrocode aus dem Modul und fügen Sie ihn in das Sub WorkBook_Open () ein.
Speichern Sie die makrofähige Arbeitsmappe. Öffne es erneut. Das Makro wird ausgeführt und ein neues Arbeitsblatt mit der Berichtsstruktur eingefügt.