Der beste VBA -Leitfaden (für Anfänger), den Sie jemals brauchen werden

Der beste VBA -Leitfaden (für Anfänger), den Sie jemals brauchen werden

Die VBA -Programmierungsplattform, die in fast allen Microsoft Office -Produkten ausgeführt wird, ist eines der leistungsstärksten Tools, die jeder verwenden kann, um die Verwendung dieser Produkte zu verbessern.

In diesem VBA -Handbuch für Anfänger werden Ihnen angezeigt, wie Sie das Entwicklermenü zu Ihrer Büroanwendung hinzufügen, wie Sie das VBA -Editor -Fenster eingeben und wie grundlegende VBA -Anweisungen und -schleifen funktionieren, damit Sie mit VBA in Excel, Word, Powerpoint und PowerPoint beginnen können, mithilfe von VBA beginnen können. Ausblick und OneNote.

Inhaltsverzeichnis

    Die linke Liste enthält alle verfügbaren Menüs und Menübefehle, die in dieser Büroanwendung verfügbar sind. Die Liste auf der rechten Seite sind diejenigen, die derzeit verfügbar oder aktiviert sind.

    • Sie sollten Entwickler in der Liste rechts sehen, aber sie wird nicht aktiviert. Wählen Sie einfach das Kontrollkästchen aus, um das Entwicklermenü zu aktivieren.
    • Wenn Sie nicht sehen Entwickler rechts erhältlich und dann die linke ändern Wählen Sie Befehle von Dropdown bis Alle Befehle. Finden Entwickler aus der Liste und auswählen Fügen Sie >> hinzu in der Mitte, um das Menü zum Band hinzuzufügen.
    • Wählen OK wenn du fertig bist.
    • Sobald das Entwicklermenü aktiv ist, können Sie zu Ihrem Hauptantragsfenster zurückkehren und auswählen Entwickler Aus dem oberen Menü. 
    • Dann auswählen Code anzeigen Aus der Kontrollgruppe im Band zum Öffnen des VBA -Editor -Fensters aus der Steuerung.
    • Dadurch wird das Fenster VBA -Editor geöffnet, in dem Sie den Code eingeben können, den Sie in den nächsten Abschnitten lernen,.
    • Fügen Sie das Entwicklermenü zu einigen der Büroanwendungen hinzu, die Sie täglich verwenden. Sobald Sie es bequem zum Öffnen des VBA -Editor -Fensters haben, fahren Sie mit dem nächsten Abschnitt dieses Handbuchs fort.

    Allgemeine VBA -Programmier -Tipps für Anfänger

    Wenn der VBA -Editor eröffnet wird, sehen die Navigationsoptionen im linken Panel von einem Büroantrag auf den anderen anders aus.

    Dies liegt daran, dass die verfügbaren Objekte, bei denen Sie VBA -Code platzieren können. In Excel können Sie beispielsweise VBA -Code zu Arbeitsbuch- oder Blattobjekten hinzufügen. Mit Word können Sie Dokumenten VBA -Code hinzufügen. In PowerPoint nur zu Modulen.

    Seien Sie also nicht überrascht von den verschiedenen Menüs. Die Struktur und die Syntax des VBA -Codes sind für alle Anwendungen gleich. Der einzige Unterschied sind die Objekte, auf die Sie sich verweisen können, und auf die Aktionen, die Sie über den VBA -Code übernehmen können.

    Bevor wir uns mit den verschiedenen Objekten und Aktionen über den VBA -Code eintauchen, schauen wir uns zunächst die häufigste VBA -Struktur und -Syntax an, die Sie verwenden können, wenn Sie VBA -Code schreiben.

    Wo kann VBA -Code eingesetzt werden

    Wenn Sie im VBA -Editor sind.

    Zum Beispiel in Excel, wenn Sie möchten Arbeitsblatt Und aktivieren Sie, Der Code wird ausgeführt, wenn das Arbeitsblatt geöffnet wird. 

    Andere Arbeitsblattaktionen, mit denen Sie Ihren VBA -Code auslösen können, enthalten bei ändert sich das Arbeitsblatt, wenn es geschlossen ist (deaktiviert), wenn die Arbeitsblattberechnung ausgeführt wird, und mehr.

    Wenn Sie VBA -Code in den Editor hinzufügen, stellen Sie immer sicher.

    VBA, wenn Aussagen

    Eine IF -Aussage funktioniert in VBA, genau wie sie in einer anderen Programmiersprache funktioniert.

    Der erste Teil der IF -Anweisung untersucht, ob eine Bedingung oder ein Satz von Bedingungen wahr ist. Diese Bedingungen können von einem und oder einem Operator verbunden werden, um sie miteinander zu verknüpfen.

    Ein Beispiel wäre zu überprüfen.

    Wenn Zellen (2, 2)> 75 dann Zellen (2, 3) = „Pass“ sonst Zellen (2, 3) = „Fail“

    Wenn Sie nicht die gesamte Anweisung in einer einzelnen Zeile möchten, können Sie sie in mehrere Zeilen aufteilen, indem Sie am Ende der Zeilen ein "_" -Symbol hinzufügen.

    Wenn Zellen (2, 2)> 75 dann _
    Zellen (2, 3) = "Pass" else _
    Zellen (2, 3) = "scheitern"

    Die Verwendung dieser Technik kann Code oft das Lesen und Debuggen erheblich erleichtern.

    VBA für nächste Loops

    Wenn Aussagen für einzelne Vergleiche ideal sind, wie das obige Beispiel eines einzelnen Zelle. Aber was ist, wenn Sie einen ganzen Zellbereich durchlaufen und dasselbe tun möchten, wenn Sie zu jedem Anweisung zu tun haben?

    In diesem Fall benötigen Sie eine für die Schleife. 

    Dazu müssten Sie die Länge eines Bereichs verwenden und diese Länge durch die Anzahl der Zeilen durchlaufen, die Daten enthalten.

    Da. Sie müssen auch einen Zähler definieren, damit Sie die Ergebnisse in die entsprechende Zeile ausgeben können. Ihr VBA -Code hätte also zuerst diese Zeile.

    Dim Dim rng als Bereich, Zelle als Bereiche
    Dimer Rowcounter als Ganzzahl

    Definieren Sie die Bereichsgröße wie folgt. 

    Setzen Sie RNG = Bereich („B2: B7“)
    RowCounter = 2

    Schließlich können Sie Ihre für die Schleife erstellen, um jede Zelle in diesem Bereich durchzusetzen und den Vergleich durchzuführen.

    Für jede Zelle in RNG Wenn Zelle.Wert> 75 dann _  Zellen (Rowcounter, 3) = "Pass" else _  Zellen (Rowcounter, 3) = "Fail"  rowcounter = rowcounter + 1 Nächste Zelle

    Sobald dieses VBA -Skript ausgeführt wird, sehen Sie die Ergebnisse in der tatsächlichen Tabelle.

    VBA während Schleifen

    Eine Weile Schleife schleifen auch eine Reihe von Aussagen durch, genau wie die für die Loop, aber der Zustand der Schleife, um fortzufahren.

    Sie können beispielsweise dasselbe für Schleife oben als eine Weile Schleife schreiben, indem Sie einfach die Rowcounter -Variable wie folgt verwenden.

    Während Reihencounter < rng.Count + 2 Wenn Zellen (Rowcounter, 2)> 75 dann _  Zellen (Rowcounter, 3) = "Pass" else _  Zellen (Rowcounter, 3) = "Fail"  rowcounter = rowcounter + 1 Wend

    Beachten Sie das rng.Zählen + 2 Die Beendigung der Grenze ist erforderlich, da der Zeilenschalter bei 2 beginnt und in Zeile 7 enden muss, in dem die Daten endet. Die Anzahl der Bereiche (B2: B7) beträgt jedoch nur 6, und die WHE -Schleife endet nur, wenn der Zähler größer als der Zähler ist - daher muss der letzte Reihencounter -Wert 8 (oder RNG) betragen.Zählen + 2).

    Sie können auch wie folgt die while -Schleife einrichten:

    Während Reihencounter <= rng.Count + 1

    Sie können nur die Reichweite (6) um 1 erhöhen, da die ROWCOUNT -Variable das Ende der Daten (Zeile 7) erreicht, kann die Schleife fertiggestellt werden.

    VBA machen und machen bis zum Schleifen

    Tun Sie und tun Sie, bis Schleifen nahezu identisch sind mit Schleifen, aber etwas anders arbeiten.

    • Der While-Schleife Überprüft, ob eine Bedingung zu Beginn der Schleife wahr ist.
    • Der DO-während der Schleife Überprüft, ob eine Bedingung wahr ist, nachdem die Aussagen in der Schleife ausgeführt wurden.
    • Der Do-biss Schleife Überprüft, ob eine Bedingung nach Ausführung der Schleife noch falsch ist.

    In diesem Fall würden Sie die while-Schleife oben wie folgt umschreiben, um eine Schleife zu erhalten.

    Tun Wenn Zellen (Rowcounter, 2)> 75 dann _  Zellen (Rowcounter, 3) = "Pass" else _  Zellen (Rowcounter, 3) = "Fail"  rowcounter = rowcounter + 1 Schlaufe während Reihencounter < rng.Count + 2

    In diesem Fall ändert sich die Logik nicht sehr, aber wenn Sie sicherstellen möchten oder do-bis-bis zur richtigen Option ist die richtige Option.

    VBA -Wählen Sie Fallanweisungen aus

    Die endgültige Art der logischen Anweisung, die Sie verstehen müssen, um mit der Strukturierung Ihres VBA -Codes zu beginnen, sind ausgewählte Fallanweisungen.

    Nehmen wir an, Sie möchten eine Bewertungsmethode haben, die nicht nur ein PASS -FAIL ist. Stattdessen möchten Sie eine Buchstabenqualität von A bis F zuweisen.

    Sie können dies mit der folgenden SELECT -Fallanweisung tun:

    Für jede Zelle in RNG Wählen Sie die Fallzelle  Fall 95 bis 100  Zellen (Rowcounter, 3) = "a" Fall 85 bis 94  Zellen (Rowcounter, 3) = "B"  Fall 75 bis 84  Zellen (Rowcounter, 3) = "C"  Fall 65 bis 74  Zellen (Rowcounter, 3) = "D"  Fall 0 bis 64  Zellen (Rowcounter, 3) = "F"  Ende auswählen rowcounter = rowcounter + 1 Nächste Zelle

    Die resultierende Tabelle nach diesem VBA -Skript sieht aus wie das unten.

    Jetzt wissen Sie alles, was Sie wissen müssen, um VBA in Ihren Microsoft Office -Anwendungen zu verwenden.