Wie füge ich VBA in MS Office hinzu?

21

Ich habe Beiträge mit Antworten gesehen, die VBA- Code / -Makros ( Visual Basic für Applikationen ) verwenden. Danach habe ich jedoch zusätzliche Kommentare zur Verwendung von VBA (Implementierung und Ausführung) notiert. Ich hoffe, dies hilft nur, um den Code auszuführen.

Meine Frage lautet also:

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

Dave
quelle
1
Ich versuche eine kanonische Frage zu erstellen. Fühlen Sie sich frei, andere Fragen hinzuzufügen, auf die ich verweisen kann / wir können schließen, Tags hinzufügen oder entweder die Frage oder die Antwort bearbeiten, um sie zu verbessern oder Antworten zu posten.
Dave
Siehe auch: superuser.com/q/794590/346288 - einfacher "Kickstart" zum Debuggen von VBA-Code.
Hannu

Antworten:

19

Um den VBA-Editor in einem Microsoft Office-Produkt zu öffnen 1 , drücken Sie Alt+ F11.

Als Nächstes müssen Sie festlegen, wie Ihr VBA implementiert werden soll. Möchten Sie, dass es durch ein Ereignis in der Software ausgelöst wird, z. B. das Speichern der Datei oder das Ändern der Auswahl in der Tabelle? Oder möchten Sie den Code jederzeit selbst ausführen können?

Wenn dies der Fall ist, sehen Sie sich den Projekt-Explorer an und suchen Sie das Projekt, das der Datei zugeordnet ist, an der Sie gerade arbeiten.

Wenn Ihr Code durch ein Ereignis ausgelöst werden soll, das einem bestimmten Arbeitsblatt zugeordnet ist (z. B. sollte der Code jedes Mal ausgeführt werden, wenn sich ein Wert in Arbeitsblatt 1 ändert), müssen Sie auf das im Projektexplorer aufgeführte bestimmte Arbeitsblattobjekt doppelklicken. Dadurch wird ein Textfeld geöffnet, in das Sie den Code einfügen können. Wenn das Ereignis mit der gesamten Arbeitsmappe anstelle eines bestimmten Blatts verknüpft ist (z. B. sollte der Code beim Speichern der Arbeitsmappe ausgeführt werden), doppelklicken Sie ThisWorkbookim Projektexplorer 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. Befindet sich in dem Dokument oder der Arbeitsmappe ein anderer Code, beispielsweise aus einem aufgezeichneten Makro, wird dieser in einem Modul angezeigt. Wenn es ein vorhandenes Modul gibt, möchten Sie in den meisten Fällen Ihren Code in dasselbe Modul unterhalb eines vorhandenen Codes einfügen. Vorhandene Module werden im Projektexplorer aufgelistet.

Wenn kein Modul vorhanden ist, müssen Sie ein neues einfügen. Wählen Sie dazu im VBA-Editorfenster Moduleaus dem InsertDropdown-Menü. 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 Optionen. Eine besteht darin, den Code über das VBA-Editorfenster auszuführen. Sie können einfach den Cursor irgendwo in den Code setzen, den Sie ausführen möchten, und drücken F5, oder auf die "Play" -Symbol - grünes Dreieck nach rechtsSchaltfläche (Ausführen) in der Symbolleiste unter der Menüleiste klicken , um den Code auszuführen.

Eine weitere Option ist die Verwendung des MacrosDialogfelds. Führen Sie zum Öffnen einen der folgenden Schritte aus:

  • 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
  • drücken Sie Alt+F8

Das Dialogfeld sieht folgendermaßen aus:

Bildbeschreibung hier eingeben

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? können Sie VBA in Excel 2010 Starter Edition nicht verwenden.

Hervorragend
quelle
4

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

Der erste Schritt ist das Hinzufügen der Registerkarte Entwickler zum Menüband.

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.) Dadurch wird ein Menü mit einer Schaltfläche "Excel-Optionen", "Word-Optionen" usw. unten angezeigt.

  2. Aktivieren Sie im Dialogfeld "Optionen" die Option "Entwicklerregisterkarte im Menüband anzeigen" Office-Menü und klicken Sie auf "OK".

  3. Ihr neuer Tab "Entwickler" sollte angezeigt werden.

In Office 2010 und 2013

  1. Klicken Sie auf Datei -> Optionen .

  2. Wählen Sie Multifunktionsleiste anpassen .

  3. Suchen Sie auf der rechten Seite nach Developer 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 .

Es wird ein entmutigender Bildschirm angezeigt, in dem der VBA-Code bearbeitet wird.

Randnotiz : Sie können das VBA-Codebearbeitungsfenster auch über die Tastenkombination Alt+ öffnen F11(auch wenn die Registerkarte Entwickler nicht angezeigt wird).

Innerhalb des Codebearbeitungsfensters sollte sich auf der linken Seite ein Bereich mit dem Namen Project-VBAProject befinden. Unter den Microsoft Excel-Objekten (dieser Name hängt davon ab, welches Programm (Word, Outlook usw.) Sie verwenden) handelt es sich um ein "Ding" 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 

Alles, was oben angegeben ist, ist das Öffnen eines Dialogfelds, um eine Meldung auf dem Bildschirm anzuzeigen.

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

Klicken Sie oben im Fenster des VBA-Code-Editors auf die grüne Wiedergabetaste, und es sollte eine Meldung angezeigt werden.

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

Möglicherweise möchten Sie jedoch Ihre 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 später daran erinnern. Schließen Sie nun einfach das von Ihnen verwendete Fenster (der Code wird automatisch gespeichert).

Klicken Sie im Menüband "Entwickler" auf " Einfügen" und wählen Sie das erste Element aus, das eine Schaltfläche darstellt. Dein Mauszeiger wird zu einem kleinen Kreuz (nicht böse, ich meine sein Aussehen). Zeichnen Sie die Größe der Schaltfläche. Es erscheint ein neues Fenster, in dem die Option angezeigt wird, 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 nun Ihre neue Taste drücken, wird die Meldung angezeigt. Klicken Sie mit der rechten Maustaste auf die Schaltfläche, um Optionen zum Verschieben, Ändern des Texts, Ändern der Größe usw. anzuzeigen.

Dave
quelle
Frage und Antwort von der gleichen Person? Seltsam .......
Prasanna
2
@Prasanna, wenn Sie eine Frage stellen, haben Sie die Möglichkeit, sie sofort zu beantworten. Denken Sie daran, es handelt sich um eine Q & A-Site. Solange sie relevant und nützlich ist, denke ich, wird sie akzeptiert. Es gibt einige davon.
Dave
Das wusste ich bis jetzt nicht. Vielen Dank für die Information
Prasanna
2
Sie können die ersten Schritte, um auf das Codefenster zuzugreifen, durch ein einfaches "Alt + F11" ersetzen. :)
ƬᴇcƬᴇιʜ007
@ ƬᴇcƬᴇιᴇ007, zögern Sie nicht zu bearbeiten :) +1
Dave