Wie füge ich VBA in MS Office hinzu?

9483
Dave

Ich habe Beiträge mit Antworten gesehen, die VBA- Code / Makros ( Visual Basic for Applications ) verwenden, ich habe jedoch auch zusätzliche Kommentare zur Verwendung des VBA (wie man ihn implementiert und ausführt) bemerkt. Ich hoffe, dass dies helfen wird, den Code auszuführen.

Meine Frage ist also:

Ich habe einen VBA-Code. Wie füge ich meinem MS Excel-, Word- oder Outlook-Projekt VBA hinzu?

19
Ich versuche, eine kanonische Frage zu erstellen. Sie können gerne weitere Fragen hinzufügen, auf die ich mich beziehen kann. Wir können sie schließen, Tags hinzufügen oder die Frage oder Antwort bearbeiten, um sie zu verbessern oder Antworten zu posten. Dave vor 9 Jahren 1

2 Antworten auf die Frage

19
Excellll

Drücken Sie +, um den VBA-Editor in einem Microsoft Office-Produkt 1 zu öffnen .AltF11

Als Nächstes müssen Sie bestimmen, wie Ihr VBA implementiert werden soll. Möchten Sie, dass ein Ereignis in der Software ausgelöst wird, z. B. die Datei, die gespeichert wird, oder die Auswahl in der Tabelle, die geändert wird? Oder möchten Sie den Code jederzeit selbst ausführen können?

Sehen Sie sich den Projekt-Explorer an und suchen Sie nach dem Projekt, das der Datei zugeordnet ist, an der Sie gerade arbeiten.

Wenn Sie möchten, dass Ihr Code durch ein Ereignis ausgelöst wird, das einem bestimmten Arbeitsblatt zugeordnet ist (z. B. sollte der Code jedes Mal ausgeführt werden, wenn sich ein Wert in Arbeitsblatt 1 ändert), sollten Sie auf das im Arbeitsblatt Explorer angegebene bestimmte Arbeitsblatt-Objekt doppelklicken. Dadurch wird ein Textfeld geöffnet, in das Sie den Code einfügen können. Wenn das Ereignis der gesamten Arbeitsmappe anstelle eines bestimmten Arbeitsblatts zugeordnet ist (z. B. sollte der Code beim Speichern der Arbeitsmappe ausgeführt werden), doppelklicken Sie ThisWorkbookim Projekt-Explorer auf das Objekt.

Wenn Sie jedoch nicht möchten, dass Ihr Code durch ein Ereignis ausgelöst wird, möchten Sie den Code in einem Modul platzieren. Wenn in dem Dokument oder in der Arbeitsmappe anderer Code enthalten ist, z. B. von einem aufgezeichneten Makro, wird er in einem Modul angezeigt. Wenn es ein vorhandenes Modul gibt, möchten Sie in den meisten Fällen Ihren Code unter demselben Code in dasselbe Modul einfügen. Bestehende Module werden im Projektexplorer aufgelistet.

Wenn kein Modul vorhanden ist, müssen Sie ein neues einfügen. Wählen Sie dazu Moduleaus dem InsertDropdown-Menü im VBA-Editorfenster. Dadurch wird ein neues Modul eingefügt und ein Textfenster im Editorfenster angezeigt. Fügen Sie dort Ihren Code ein.

Wenn Sie den Code in einem Modul ausführen möchten, haben Sie einige Möglichkeiten. Zum einen führen Sie den Code aus dem VBA-Editorfenster aus. Sie können den Cursor einfach irgendwo in den Code stellen, den Sie ausführen möchten, und drücken F5, oder klicken Sie auf die Symbol "play" - grünes Dreieck, das nach rechts zeigtSchaltfläche (Ausführen) in der Symbolleiste unter der Menüleiste, um den Code auszuführen.

Eine weitere Option ist die Verwendung des MacrosDialogfelds. Führen Sie einen der folgenden Schritte aus, um es zu öffnen:

  • Klicken Sie auf der ViewRegisterkarte des Menübands im Bereich Macros(ganz rechts) auf die MacrosSchaltfläche
  • Klicken Sie auf der DeveloperRegisterkarte im Bereich Code(ganz links) auf die MacrosSchaltfläche
  • Alt+ drückenF8

Das Dialogfeld sieht folgendermaßen aus:

In dem obigen Beispiel können Sie laufen YourCodedurch

  • Wählen Sie es aus der Liste aus und klicken Sie dann auf Runoder
  • Wählen Sie es aus der Liste aus und doppelklicken Sie darauf.

______
1 Gemäß Kann ich VBA in Excel 2010 Starter Edition verwenden? Sie können VBA nicht in Excel 2010 Starter Edition verwenden.

4
Dave

Diese Schritte werden mit Office 2010 ausgeführt (sofern nicht anders angegeben), sollten aber auch für 2007 und 2013 ähnlich sein. Ich mache es mit Excel, aber die Unterschiede sollten subtil sein.

Der erste Schritt besteht darin, die Registerkarte "Entwickler" zur Multifunktionsleiste hinzuzufügen.

In Office 2007

  1. Klicken Sie auf "Office-Menü" -> " (Programm) Optionen". ("Office-Menü" bezieht sich auf die Office-SchaltflächeSchaltfläche in der oberen linken Ecke.) Daraufhin wird ein Menü mit der Schaltfläche "Excel-Optionen", "Word-Optionen" usw. unten angezeigt.

  2. Aktivieren Sie im Optionsdialogfeld die Option "Entwicklerregisterkarte in der Multifunktionsleiste anzeigen": Büro-Menü und klicken Sie auf "OK".

  3. Ihre neue Registerkarte "Entwickler" sollte angezeigt werden.

In Office 2010 und 2013

  1. Klicken Sie auf Datei -> Optionen .

  2. Wählen Sie Band anpassen .

  3. Suchen Sie auf der rechten Seite Entwickler und aktivieren Sie das Kontrollkästchen. Klicken Sie auf OK .

  4. Ihre neue Registerkarte sollte angezeigt werden, klicken Sie darauf und klicken Sie dann auf Visual Basic .

Ein erschreckender Bildschirm wird angezeigt, dh das VBA-Code-Bearbeitungsfenster.

Randbemerkung : Sie können das VBA-Code-Bearbeitungsfenster auch mit der Tastenkombination Alt+ öffnen F11(auch wenn die Registerkarte "Entwickler" nicht angezeigt wird).

In dem Code-Bearbeitungsfenster sollte sich auf der linken Seite ein Fenster namens Project-VBAProject befinden. Unter den Microsoft Excel-Objekten (dieser Name unterscheidet sich je nachdem, welches Programm (Word, Outlook usw.) Sie verwenden), handelt es sich hierbei um eine "Sache" namens ThisWorkbook. Doppelklicken Sie auf ThisWorkbook

In diesem Beispiel verwenden wir den folgenden Code.

sub WarnMeOfDanger() MsgBox "Argh, a dragon is behind you!" end sub  

Es wird nur angezeigt, dass ein Dialogfeld geöffnet wird, um eine Nachricht auf dem Bildschirm anzuzeigen.

Kopieren Sie den Code und fügen Sie ihn in das weiße Blatt im VBA-Code-Bearbeitungsfenster ein.

Klicken Sie oben im Fenster des VBA-Code-Editors auf die grüne Wiedergabeschaltfläche, und Sie sollten eine Meldung sehen.

Kehren Sie also jedes Mal, wenn Sie den Code ausführen möchten, zu diesem Bildschirm zurück und drücken Sie Play!

Sie können jedoch lieber eine eigene Schaltfläche hinzufügen. Wenn Sie eine Schaltfläche hinzufügen möchten, beachten Sie zunächst die erste Zeile des Codes WarnMeOfDanger(). Dies ist eigentlich der Name unserer " Subroutine ". Wir werden uns das später merken. Schließen Sie nun einfach das von Ihnen verwendete Fenster (der Code wird automatisch gespeichert).

Klicken Sie weiterhin in der Entwickler-Multifunktionsleiste auf Einfügen und wählen Sie das erste Element aus. Dies ist eine Schaltfläche. Ihr Mauszeiger wird zu einem kleinen Kreuz (nicht wütend, ich meine das Aussehen). Zeichnen Sie die Größe der Schaltfläche. Ein neues Fenster wird angezeigt und es sollte uns die Option zeigen, die Schaltfläche einer Funktion zuzuweisen. In diesem Fall sollten wir so etwas sehen ThisWorkbook.WarnMeOfDanger. Klicken Sie darauf und klicken Sie auf OK .

Wenn Sie jetzt Ihre neue Taste drücken, wird die Nachricht angezeigt. Klicken Sie mit der rechten Maustaste auf die Schaltfläche, um Optionen zum Verschieben, Ändern des Textes, Ändern der Größe usw. zu erhalten.

Frage und Antwort von derselben Person? Seltsam....... Prasanna vor 9 Jahren 0
@Prasanna, wenn Sie eine Frage stellen, haben Sie die Möglichkeit, diese sofort zu beantworten. Denken Sie daran, es ist eine Q & A-Site. Solange sie relevant und nützlich ist, glaube ich, dass sie akzeptiert wird. Es gibt einige davon. Dave vor 9 Jahren 2
Das wusste ich bis jetzt nicht. Danke für die Information Prasanna vor 9 Jahren 0
Sie können die ersten Schritte zum Zugriff auf das Codefenster durch ein einfaches "Alt + F11" ersetzen. :) Ƭᴇcʜιᴇ007 vor 9 Jahren 2
@ Ƭᴇcʜιᴇ007, zögern Sie nicht weg zu bearbeiten :) +1 Dave vor 9 Jahren 0
@Dave True 'nuff. :) Ƭᴇcʜιᴇ007 vor 9 Jahren 0
@Prasanna - während Sie Ihre eigene Frage öffnen, gibt es eine Schaltfläche "Beantworten Sie Ihre Frage". und es wird offiziell unterstützt und ermutigt, Ihr Wissen mit anderen zu teilen. Es gibt auch ein Kontrollkästchen beim Posten Ihrer Frage mit dem Titel "Beantworten Sie Ihre eigene Frage" Ĭsααc tիε βöss vor 9 Jahren 0