VBA-Unterfunktion

Es ist die wichtigste und bedeutendste Komponente von VBA. Eine Subroutinenprozedur ist eine Reihe von Visual Basic-Anweisungen, die von den Sub- und End-Sub-Anweisungen eingeschlossen werden. SUB bedeutet Unterprogrammprozedur, es ist eine Reihe von VBScript-Anweisungen, bei denen kein Ergebnis oder Wert zurückgegeben wird.

Unterprozeduren verwenden normalerweise Argumente oder Code (dh Variablen, Konstanten oder Ausdrücke, die von einer aufrufenden Prozedur übergeben werden), die zur Ausführung einer bestimmten Aufgabe ausgeführt werden. Unteranweisung enthält leere Klammern () ohne Argument.

Schauen wir uns an, wie Unterprozeduren in Excel VBA geschrieben werden.

Grundstruktur von VBA Sub

Sub (Subprozedur oder Aufgabenname) ()

(Welche Aufgabe muss erledigt werden?)

End Sub

Normalerweise beginnt die Subroutine mit einer Sub- Anweisung und endet mit einer End Sub- Anweisung. Unterprozedur- oder Aufgabenname wird auch als Makroname bezeichnet, wobei er keine Leerzeichen und einen eindeutigen Namen enthalten sollte. Sub akzeptiert Eingaben oder Codes vom Benutzer und zeigt oder druckt Informationen. Wenn die Anweisung beendet ist oder am Ende der Anweisung, wird End Sub verwendet

Hinweis: Sub kann nur Argumente annehmen, sie liefern keine Ergebnisse

Verschiedene Arten von Unterprogrammen in VBA (Zugriffsmodifikatoren)

  1. Öffentliches Subverfahren
  2. Private Subprozedur

Bevor Sie den Unterschied zwischen den beiden kennen, sollten Sie sich der „Zugriffsebene“ bewusst sein, dh der Fähigkeit, darauf zuzugreifen. Public Sub ähnelt Sub, wobei Procedure die Verwendung der Prozedur oder des VBA-Codes in allen Modulen der Arbeitsmappe ermöglicht. Mit Private Sub Procedure können Sie die Prozedur oder den VBA-Code nur im aktuellen Modul verwenden. (Im Beispiel erklärt)

Wie verwende ich die Unterfunktion in Excel VBA?

Im Folgenden sind die verschiedenen Beispiele für die Verwendung der Unterfunktion in Excel unter Verwendung von VBA-Code aufgeführt.

Sie können diese VBA-Sub-Excel-Vorlage hier herunterladen - VBA-Sub-Excel-Vorlage

VBA-Unterfunktion - Beispiel 1

Schritt 1: Klicken Sie auf der Registerkarte Entwickler in der Gruppe Code auf Visual Basic, oder verwenden Sie die Tastenkombination Alt + F11

Schritt 2: Jetzt können Sie ein leeres Modul erstellen, dh mit der rechten Maustaste auf Sheet1 (VBA_SUB) klicken. Es werden verschiedene Optionen angezeigt. Wählen Sie Einfügen. Unter dem Einfügen werden drei Optionen angezeigt, in denen Sie Modul auswählen müssen. Das leere Modul wird erstellt . Sie können es in "VBA_SUB" im Fenster "Eigenschaften" umbenennen

Schritt 3: Beginnen Sie wie folgt mit der Unterprozedur und erstellen Sie den Code von VBA_SUB

Code:

 Sub VBA_SUB () End Sub 

Schritt 4: Sobald Sie mit der Eingabe von range beginnen, wird das Argument in der Klammer angezeigt und Sie klicken auf die Tabulatortaste, um es auszuwählen. Wenn Sie ein Leerzeichen verlassen und die offene Klammer "(" eingeben, erscheint das CELLS-Argument an der Stelle, an der Sie die Syntax oder das Argument für die Bereichsfunktion eingeben müssen, z. B. "E5".

Angenommen, ich möchte, dass SUBROUTINE in der Zelle "E5 " angezeigt wird. Dazu muss nach der Bereichsfunktion = "SUBROUTINE" eingegeben werden. und dann auf Enter klicken.

Nun ist der Code fertig,

Code:

 Sub VBA_SUB () Range ("E5") = "SUB ROUTINE" End Sub 

Schritt 5: Jetzt können Sie das Makro ausführen, indem Sie auf die Schaltfläche " Sub ausführen" (dh auf die grüne Schaltfläche "Abspielen") klicken oder F5 drücken. Sie können beobachten, dass "SUBROUTINE" in der Zelle "B4" erscheint.

VBA-Unterfunktion - Beispiel 2

Schritt 1: Beginnen Sie mit dem Sub und wir werden jetzt sehen, wie wir die Funktion mit der MsgBox aufrufen können.

Code:

 Private Sub Display_Message () MsgBox "Mein erstes Programm" End Sub 

Schritt 2: Angenommen, wenn Sie den oben genannten Code im VBA_SUB-Modul ausführen, funktioniert dies, aber wenn Sie versuchen, ihn in ein anderes Modul zu kopieren und auszuführen, dh wenn Sie diesen Code im neu erstellten Modul 1 von Blatt 2 oder 3 ausführen, a Popup-Meldung wird nicht angezeigt.

VBA-Unterfunktion - Beispiel # 3

Schritt 1: Auf öffentliche Unterprozeduren kann von einem anderen Modul aus zugegriffen werden. Sehen wir uns an, wie dies funktioniert.

Code:

 Public Sub task_1 () Range ("H7") = "PUBLIC SUBROUTINE" End Sub 

Schritt 2: Wenn ich den oben genannten Code (Public sub task_1 ) im Modul VBA_SUB ausführe, wird der Wert oder das Ergebnis zurückgegeben, dh die Textzeichenfolge "PUBLIC SUBROUTINE" in der Zelle "H7" von Sheet1

Angenommen, ich möchte denselben Code in dem neu erstellten Modul PUBLIC_SUB ausführen, dann muss nicht der gesamte Code in dieses Modul geschrieben werden, sondern nur der Makroname, also task_1, anstelle der Bereichsfunktion in der zweiten Codezeile, erhalten Sie die gleiche Ausgabe oder das gleiche Ergebnis, z. B. die Zeichenfolge "PUBLIC SUBROUTINE" in der Zelle "H7" von Blatt 2.

Code:

 Public Sub task_2 () Rufe task_1 End Sub auf 

Speichern Sie Ihre Arbeitsmappe als "Excel-Makro-fähige Arbeitsmappe". Wenn Sie diese Excel-Datei erneut öffnen, können Sie die folgende Tastenkombination verwenden, z

  • Mit der Tastenkombination Funktion + Alt + F11 können Sie auf den gesamten erstellten Makrocode der Arbeitsmappe zugreifen
  • Mit der Tastenkombination Funktion + Alt + F8 können Sie ein Dialogfeld „Makro“ öffnen, das den gesamten Makronamen enthält und in dem Sie einen bestimmten Makrocode Ihrer Wahl ausführen können

Dinge, an die man sich erinnern sollte

  • Wenn zu Beginn einer VBA-Funktion, dh einer Sub-Deklaration, kein Schlüsselwort wie PUBLIC oder PRIVATE erwähnt oder eingefügt wird, wird die Standardeinstellung "Public" Sub berücksichtigt .
  • Das Intellisense-Menü ist das Dropdown-Menü, das auch dann angezeigt wird, wenn Sie im VB-Code- oder Editor-Fenster einen Punkt „.“ Eingeben. Es enthält eine Liste aller Elemente der aktiven Referenz VB OBJECT MODEL (dh Objekte, Eigenschaften, Variablen), Methoden und Konstanten). Diese Funktion hilft Zeit zu sparen und Tippfehler zu vermeiden.
  • Abgesehen von End Sub gibt es eine Option für die Exit Sub- Anweisung zwischen SUB und END SUB, die Sie beim sofortigen Verlassen einer Sub-Prozedur unterstützt oder unterstützt.

Empfohlene Artikel

Dies ist eine Anleitung zu VBA SUB. Hier diskutieren wir die Verwendung von Excel VBA SUB zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Arbeiten mit VBA Active Cell
  2. Zeile in VBA löschen
  3. Wie verwende ich Excel VBA Transpose?
  4. Wie 1004 Fehler mit VBA zu beheben

Kategorie: