Was ist ein Unterprogramm in VBA?
Eine Unterroutine in VBA ist ein Code, der eine bestimmte im Code beschriebene Aufgabe ausführt, jedoch kein Ergebnis oder keinen Wert zurückgibt. Unterprogramme werden verwendet, um große Codeteile in kleine verwaltbare Teile zu zerlegen. Unterprogramme können von überall im Programm mehrmals abgerufen werden.
Angenommen, Sie haben eine Benutzeroberfläche mit Textfeldern zum Akzeptieren von Benutzereingabedaten erstellt. Sie können eine Unterroutine erstellen, die den Inhalt der Textfelder löscht. Eine VBA-Aufruf-Subroutine ist in einem solchen Szenario geeignet, da Sie keine Ergebnisse zurückgeben möchten.
In diesem VBA-Tutorial lernen Sie:
- Warum Unterprogramme verwenden?
- Regeln für die Benennung von Unterprogrammen und Funktionen
- VBA-Subroutinensyntax
- So rufen Sie Sub in VBA auf
Warum Unterprogramme verwenden?
- Teilen Sie Code in kleinen verwaltbaren Code auf : Ein durchschnittliches Computerprogramm verfügt über Tausende und Abertausende von Quellcodezeilen. Dies führt zu Komplexität. Unterprogramme helfen, dieses Problem zu lösen, indem sie das Programm in kleine überschaubare Codestücke aufteilen.
- Wiederverwendbarkeit des Codes . Angenommen, Sie haben ein Programm, das auf die Datenbank zugreifen muss. Fast alle Fenster im Programm müssen mit der Datenbank interagieren. Anstatt separaten Code für diese Fenster zu schreiben, können Sie eine Funktion erstellen, die alle Datenbankinteraktionen verarbeitet. Sie können es dann von jedem beliebigen Fenster aus aufrufen.
- Unterprogramme und Funktionen sind selbstdokumentierend . Angenommen, Sie haben eine Funktion berechneLoanInterest und eine andere, die connectToDatabase sagt. Durch einfaches Betrachten des Namens des Unterprogramms / der Funktion kann der Programmierer erkennen, was das Programm tut.
Regeln für die Benennung von Unterprogrammen und Funktionen
Um Unterprogramme und Funktionen zu verwenden, müssen einige Regeln befolgt werden.
- Ein Unterprogramm- oder VBA-Aufruffunktionsname darf kein Leerzeichen enthalten
- Ein Excel VBA Call Sub oder Funktionsname sollte mit einem Buchstaben oder einem Unterstrich beginnen. Es kann nicht mit einer Zahl oder einem Sonderzeichen beginnen
- Eine Unterroutine oder ein Funktionsname kann kein Schlüsselwort sein. Ein Schlüsselwort ist ein Wort, das in VBA eine besondere Bedeutung hat. Wörter wie Private, Sub, Function und End usw. sind Beispiele für Schlüsselwörter. Der Compiler verwendet sie für bestimmte Aufgaben.
VBA-Subroutinensyntax
Sie müssen die Registerkarte Entwickler in Excel aktivieren, um diesem Beispiel folgen zu können. Wenn Sie nicht wissen, wie Sie die Registerkarte Entwickler aktivieren können, lesen Sie das Lernprogramm zu VBA-Operatoren
HIER in der Syntax,
Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String)'do somethingEnd Sub
Erklärung der Syntax
Code |
Aktion |
---|---|
|
|
|
|
|
|
Die folgende Unterroutine akzeptiert den Vor- und Nachnamen und zeigt sie in einem Meldungsfeld an.
Jetzt werden wir diese Unterprozedur programmieren und ausführen. Mal sehen.
So rufen Sie Sub in VBA auf
Im Folgenden finden Sie eine schrittweise Anleitung zum Aufrufen von Sub in VBA:
- Entwerfen Sie die Benutzeroberfläche und legen Sie die Eigenschaften für die Benutzersteuerelemente fest.
- Fügen Sie das Unterprogramm hinzu
- Schreiben Sie den Klickereigniscode für die Befehlsschaltfläche, die das Unterprogramm aufruft
- Testen Sie die Anwendung
Schritt 1) Benutzeroberfläche
Entwerfen Sie die Benutzeroberfläche wie in der Abbildung unten gezeigt
Legen Sie die folgenden Eigenschaften fest. Die Eigenschaften, die wir einstellen
S / N. | Steuerung | Eigentum | Wert |
---|---|---|---|
1 | CommandButton1 | Name | btnDisplayFullName |
2 | Bildbeschriftung | Vollständiges Unterprogramm |
Ihre Benutzeroberfläche sollte nun wie folgt aussehen
Schritt 2) Unterprogramm hinzufügen
- Drücken Sie Alt + F11, um das Codefenster zu öffnen
- Fügen Sie das folgende Unterprogramm hinzu
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String)MsgBox firstName & " " & lastNameEnd Sub
HIER im Code,
Code |
Aktionen |
---|---|
|
|
|
|
|
|
Schritt 3) Aufrufen des Unterprogramms über das Klickereignis der Befehlsschaltfläche.
- Klicken Sie mit der rechten Maustaste auf die Befehlsschaltfläche (siehe Abbildung unten). Wählen Sie Code anzeigen.
- Der Code-Editor wird geöffnet
Fügen Sie im Code-Editor den folgenden Code für das Klickereignis der Befehlsschaltfläche btnDisplayFullName hinzu.
Private Sub btnDisplayFullName_Click()displayFullName "John", "Doe"End Sub
Ihr Codefenster sollte nun wie folgt aussehen
Speichern Sie die Änderungen und schließen Sie das Codefenster.
Schritt 4) Testen des Codes
Schalten Sie in der Entwickler-Symbolleiste den Entwurfsmodus aus. Wie nachfolgend dargestellt.
Schritt 5) Klicken Sie auf die Befehlsschaltfläche 'FullName Subroutine'.
Sie erhalten die folgenden Ergebnisse
Laden Sie den obigen Excel-Code herunter
Zusammenfassung:
- Eine Unterroutine ist ein Code, der eine bestimmte Aufgabe ausführt. Eine Unterroutine gibt nach der Ausführung keinen Wert zurück
- Unterprogramme bieten Code-Wiederverwendbarkeit
- Unterprogramme helfen dabei, große Codestücke in kleinen verwaltbaren Code zu zerlegen.