Wie VBA-Code in ein Modul mit Windows-Code zu holen

Eine der Art und Weise, in der Sie VBA-Code in ein VBA-Modul erhalten können, ist die Excel-Makro-Rekorder verwenden, um Ihre Aktionen aufzeichnen und wandeln sie Code in VBA. Allerdings können nicht alle Aufgaben zu VBA übersetzt werden durch Aufzeichnung eines Makros. Sie können auch den Code direkt eingeben oder den Code aus einem Modul kopieren und fügen Sie ihn in eine andere.

Eingeben und Bearbeiten von Text in einem VBA-Modul arbeitet als Sie vielleicht erwarten. Sie können wählen, Kopieren, Ausschneiden, Einfügen und andere Dinge tun, um den Text.

Eine einzelne Zeile von VBA-Code kann so lang sein, wie Sie möchten. Sie können jedoch die verwendet werden soll Zeilenfortsetzungszeichen langen Zeilen Code zu brechen. Um eine einzige Zeile Code weiterhin (auch bekannt als ein Erklärung) Von einer Zeile zur nächsten, wobei die erste Zeile mit einem Leerzeichen durch einen Unterstrich (_), gefolgt beenden. Dann weiter die Anweisung in der nächsten Zeile. Hier ist ein Beispiel von einer einzigen Anweisung in drei Linien:

Selection.Sort Key1: = Range ( "A1"), _Order1: = xlAscending, Rubrik: = xlGuess, _Orientation: = xlTopToBottom

Diese Aussage würde die gleiche Art und Weise durchführen, wenn es in einer einzigen Zeile eingegeben wurden (ohne Zeilenfortsetzungszeichen).

VBE hat mehrere Ebenen der Undo und Redo. Wenn Sie eine Anweisung gelöscht, dass Sie nicht haben sollten, verwenden Sie die Undo-Schaltfläche in der Symbolleiste (oder drücken Sie Strg + Z), bis die Anweisung wieder erscheint. Nach dem Verhängnis, können Sie die Schaltfläche Wiederherstellen verwenden, um die Änderungen, die Sie rückgängig gemacht haben durchzuführen.

Bereit einige echte, Live-Code einzugeben? Versuchen Sie, die folgenden Schritte:

  1. Erstellen Sie eine neue Arbeitsmappe in Excel.

  2. Drücken Sie Alt + F11 aktivieren VBE.

  3. Klicken Sie auf den Namen der neuen Arbeitsmappe im Projektfenster.

  4. Wählen Sie Einfügen-Modul ein VBA-Modul in das Projekt einzufügen.

  5. Geben Sie den folgenden Code in das Modul:

    Sub GuessName () Dim Msg als StringDim Ans Als LongMsg = "Ist Ihr Name" Application.UserName "?" Ans = MsgBox (Msg, vbYesNo) Wenn Ans = vbNo Then MsgBox "Ach, egal." Wenn Ans = vbYes Then MsgBox "Ich hellsichtig sein muss!" End Sub
  6. Stellen Sie sicher, dass der Cursor irgendwo im Text befinden Sie eingegeben und dann F5 drücken Sie die Prozedur auszuführen.

F5 ist eine Abkürzung für den Run # 8202 - # 8202-Run Sub / User Befehl.

Wenn Sie den Code eingeben in Schritt 5 aufgeführt sind, werden Sie feststellen, dass VBE einige Anpassungen an dem Text macht Sie eingeben. Zum Beispiel, nachdem Sie die Sub-Anweisung geben, VBE fügt automatisch die End Sub-Anweisung. Und wenn Sie den Raum vor oder nach einem Gleichheitszeichen weglassen, fügt VBE den Raum für Sie. Auch ändert sich VBE die Farbe und die Aktivierung von einem Text. Diese Veränderungen sind VBE Weg zu halten Dinge ordentlich und lesbar.

Wenn Sie die vorherigen Schritte gefolgt, erstellt einfach ein VBA-Sub-Prozedur, die auch als Makro bekannt. Wenn Sie F5 drücken, führt Excel den Code und folgt den Anweisungen. Mit anderen Worten, wertet Excel jede Aussage und das tut, was Sie es gesagt, zu tun. Sie können dieses Makro beliebig oft ausführen - obwohl es dazu neigt, seine Berufung nach ein paar Dutzend Hinrichtungen zu verlieren.

Diese einfache Makro verwendet die folgenden Begriffe:

  • Definieren eines Sub-Prozedur (die erste Zeile)

  • Deklarieren von Variablen (die Dim-Anweisungen)

  • Zuweisen von Werten zu Variablen (Msg und Ans)

  • Verketten (Verbinden), um eine Zeichenkette (mit dem Operator)

  • Mit einem eingebauten in VBA-Funktion (MsgBox)

  • Mit Hilfe der integrierten VBA-Konstanten (vbYesNo, vbNo und vbYes)

  • Unter Verwendung eines If-Then-Konstrukt (zweimal)

  • Beenden einer Sub-Prozedur (die letzte Zeile)

Wie bereits erwähnt, können Sie kopieren und Code in ein VBA-Modul einfügen. Zum Beispiel kann ein Sub oder Function-Prozedur, die Sie für ein Projekt schreiben könnte auch in einem anderen Projekt nützlich sein. Anstatt Zeit zu verschwenden, den Code erneut eingeben, können Sie das Modul aktivieren und die normale Copy-and-Paste-Verfahren (Strg + C + V zum Einfügen zu kopieren und Strg). Nach dem Einfügen den Code in ein VBA-Modul, können Sie den Code nach Bedarf ändern.

Menü