In der Excel-Welt stehen viele Benutzer vor der Notwendigkeit, ein Formular neu zu laden. Dies kann aus verschiedenen Gründen geschehen: nachdem Sie Änderungen am Code vorgenommen haben, nachdem Sie die Daten gespeichert haben oder einfach nur die Felder bereinigt haben. Allerdings weiß nicht jeder, wie man diesen Vorgang in VBA Excel ausführt. In diesem Artikel informieren wir Sie über nützliche Tipps und Anweisungen zum Neuladen eines Formulars in VBA Excel.
Einstieg um das Formular in Excel VBA neu zu laden, schließen Sie die aktuelle Instanz des Formulars. Dazu können Sie die Unload-Methode verwenden:
Diese Methode schließt das aktuelle Formular und gibt Ressourcen und Speicher frei. Nach dem Schließen des Formulars bleibt es jedoch immer noch im Speicher und kann wieder geöffnet werden. Daher ist es wichtig, den zweiten Schritt auszuführen, um das Formular vollständig neu zu laden.
Zweiter Schritt ist ein erneuter Aufruf des Formulars. Dazu wird die Load-Methode verwendet:
Load UserForm1
In diesem Beispiel ist UserForm1 der Name des Formulars, das neu geladen werden soll. Sie können diesen Namen durch den Namen Ihres Formulars ersetzen. Der Aufruf der Load-Methode erstellt eine neue Instanz des Formulars, füllt es mit neuen Daten aus und zeigt es an.
Das Neuladen eines Formulars in Excel VBA besteht also darin, die aktuelle Formularinstanz mit der Unload-Methode zu schließen und eine neue Formularinstanz mit der Load-Methode aufzurufen. Diese hilfreichen Tipps und Anleitungen helfen Ihnen, das Formular erfolgreich neu zu laden und mit der Arbeit in Excel fortzufahren.
Methoden zum Neuladen eines Excel-VBA-Formulars
1. Verwenden der Schaltfläche «Neu laden»
Eine der einfachsten Möglichkeiten, ein Excel-VBA-Formular neu zu laden, besteht darin, dem Formular eine Schaltfläche «Neu laden» hinzuzufügen. Wenn Sie auf diese Schaltfläche klicken, können Sie Code ausführen, der alle Elemente im Formular auf ihren ursprünglichen Status aktualisiert.
2. Verwenden von »ClearForm"
Sie können eine separate «ClearForm» -Prozedur erstellen, um den Code leichter wiederverwenden zu können, um alle Elemente im Formular zu bereinigen. Sie können die Schaltfläche verwenden, um diese Prozedur aus dem Code aufzurufen, oder Sie können sie direkt aus anderen Prozeduren aufrufen.
3. Schließen und erneutes Öffnen des Formulars
Wenn Sie das Excel-VBA-Formular vollständig neu laden müssen, können Sie es schließen und erneut öffnen. Dazu können Sie die Methoden »Unload Me« und "UserForm" verwenden.Show" entsprechend. Dieser Ansatz ist besonders nützlich, wenn Sie ein Formular nicht nur neu laden, sondern auch Daten aktualisieren oder Einstellungen ändern möchten.
4. Verwenden von Variablen zum Zurücksetzen von Werten
Wenn das Formular viele verschiedene Elemente enthält, ist es möglicherweise einfacher, Variablen zum Speichern und Zurücksetzen von Werten zu verwenden. Wenn Sie das Formular neu laden, können Sie alle Variablen auf die Anfangswerte zurücksetzen.
5. Verwenden des Ereignisses «Aktivieren»
Wenn ein Excel-VBA-Formular bei bestimmten Ereignissen automatisch geöffnet wird, können Sie das Activate-Ereignis verwenden, um das Formular neu zu laden. Wenn Sie ein Formular aktivieren, können Sie Code ausführen, der alle Elemente im Formular auf ihre Anfangswerte aktualisiert.
Das Laden eines Excel-VBA-Formulars kann auf verschiedene Arten durchgeführt werden, und die beste Methode hängt von der spezifischen Situation und den Projektanforderungen ab. Wählen Sie unter Berücksichtigung des Verwendungskontexts und der erforderlichen Aktionen die geeignete Methode zum Neuladen des Formulars aus.
Verwenden der Eigenschaft .Hide
Um die Eigenschaft zu verwenden .Ausblenden Rufen Sie es einfach aus dem VBA-Code auf und geben Sie den Namen des Formulars an, das Sie ausblenden möchten. Wenn der Name des Formulars beispielsweise "Form1" lautet, sieht der Code folgendermaßen aus:
Fügen Sie diesen Code zum richtigen Zeitpunkt in Ihr Skript ein, z. B. bevor Sie Operationen ausführen, bei denen das Formular neu geladen werden muss.
Nach dem Aufruf der Methode .Das Formular wird ausgeblendet, und der Benutzer kann es erst sehen, wenn Sie sich dafür entscheiden, es erneut anzuzeigen.
Sie können die Eigenschaft verwenden, um das Formular wieder auf den Bildschirm zu bringen.Visible. Ungefähr so:
Mit einer Eigenschaft .Visible Sie können das Formular zum richtigen Zeitpunkt wieder auf den Bildschirm bringen, wenn der Neustart abgeschlossen ist und alle Änderungen vorgenommen wurden.
Verwenden der Eigenschaft .Ausblenden und Eigenschaften .Mit Visible können Sie die Sichtbarkeit eines Formulars während des Neustarts steuern, wodurch der Prozess für den Benutzer verständlicher und benutzerfreundlicher wird.
Beachten Sie, dass Sie einen aktiven Verweis auf das Formular im Deklarationsblock des VBA-Codemoduls haben müssen. Zum Beispiel:
Public Form1 As New UserForm1
Verwenden der Eigenschaft .Show
Die Syntax für die Verwendung der Eigenschaft .Show einfach:
Der Name des Formulars.Show
Formname ist der Name des Formulars, das Sie anzeigen möchten.
Sub ShowForm()Form1.ShowEnd Sub
In diesem Beispiel wird das Formular mit dem Namen Form1 beim Ausführen der ShowForm-Unterroutine sichtbar.
Platzierung der Eigenschaft .Show in verschiedenen Teilen von VBA-Code kann in verschiedenen Fällen nützlich sein:
1. Laden eines Formulars, wenn Daten geändert werden:
Sie können die Eigenschaft verwenden .Show, um das Formular nach Änderungen an den Daten neu zu laden. Wenn Sie beispielsweise ein Formular zum Eingeben von Daten in eine Tabelle haben, können Sie die Eigenschaft aufrufen .Show, nachdem die Daten geschrieben wurden, um das Formular mit den aktualisierten Daten neu zu laden.
2. Anzeigen des Formulars beim Klicken auf eine Schaltfläche:
Wenn Sie eine Schaltfläche in einem Excel-Arbeitsblatt haben, können Sie ihr ein Makro zuweisen, das die Eigenschaft aufruft .Show, um das Formular anzuzeigen, wenn Sie auf diese Schaltfläche klicken. Dadurch können Benutzer mit dem Formular interagieren, um Daten einzugeben oder bestimmte Vorgänge auszuführen, ohne das VBA-Modul öffnen zu müssen.
3. Automatisches Anzeigen des Formulars beim Öffnen einer Arbeitsmappe:
Sie können das Workbook_Open-Ereignis verwenden, um das Formular beim Öffnen der Arbeitsmappe automatisch anzuzeigen. Wenn Sie ein Formular zum Eingeben von Daten oder zum Anzeigen von Informationen haben, kann dies eine bequeme Möglichkeit sein, sicherzustellen, dass es jedes Mal angezeigt wird, wenn Sie eine Arbeitsmappe öffnen.
Verwenden der Eigenschaft .Show bietet Ihnen mehr Flexibilität bei der Verwaltung der Anzeige von Formularen in VBA Excel. Sie können verschiedene Orte und Methoden auswählen, um diese Eigenschaft aufzurufen, um die Funktionsweise des Formulars anzupassen und eine benutzerfreundliche Benutzeroberfläche bereitzustellen.
Verwenden der Methode .Clear
Um die Methode zu verwenden .Clear Sie benötigen den Namen des Formulars, das Sie neu laden möchten. Der Aufruf dieser Methode erfolgt wie folgt:
ИмяФормы.Clear
Wenn Ihr Formular beispielsweise "UserForm1" heißt, sieht die Bereinigung folgendermaßen aus:
UserForm1.Clear
Methode.Mit Clear können Sie alle Werte von Formularelementen zurücksetzen, z. B. Textfelder, Kontrollkästchen, Optionsfelder, eine Bereitstellungsliste und andere Steuerelemente. Dies ist praktisch, wenn Sie alle Formulardaten zurücksetzen und mit dem Ausfüllen beginnen möchten.
Es sollte jedoch berücksichtigt werden, dass die Methode .Clear entfernt nur die Elementwerte, entfernt jedoch die Elemente selbst nicht aus dem Formular. Wenn Sie die Formularelemente vollständig entfernen müssen, verwenden Sie die Methode .Controls.Clear:
ИмяФормы.Controls.Clear
Um beispielsweise alle Elemente aus dem Formular "UserForm1" zu entfernen, verwenden Sie:
UserForm1.Controls.Clear
Jetzt wissen Sie, wie Sie die Methode verwenden .Clear, um das Excel-VBA-Formular neu zu laden und die Formularelemente zu bereinigen. Diese Methode hilft Ihnen, den Prozess des Neustarts des Formulars zu vereinfachen und von vorne zu beginnen.
Verwenden Sie eine Kombination von Eigenschaften .Hide und .Show
Eigenschaft .Ausblenden wird verwendet, um das Formular vor dem Benutzer auszublenden. Sie können diese Eigenschaft beispielsweise verwenden, wenn ein Makro komplexe Berechnungen oder Datenverarbeitung durchführt und Sie nicht möchten, dass der Benutzer etwas in das Formular eingibt oder sieht.
Um die Eigenschaft zu verwenden .Ausblenden, legen Sie es einfach auf True fest:
Private Sub CommandButton1_Click()Me.HideEnd Sub
Eigenschaft .Show wird verwendet, um dem Benutzer das ausgeblendete Formular erneut anzuzeigen. Zum Beispiel können Sie diese Eigenschaft verwenden, nachdem Sie Berechnungen durchgeführt haben oder die Daten verarbeitet haben, um das Formular zurückzugeben.
Private Sub CommandButton2_Click()Me.ShowEnd Sub
Sie können auch eine Kombination von Eigenschaften verwenden .Hide und .Show, um eine "sofortige Aktualisierung" des Formulars zu erstellen. Wenn Sie beispielsweise eine Schaltfläche zum Aktualisieren oder Neuladen eines Formulars haben, können Sie das Formular zuerst mit ausblenden.Ausblenden, führen Sie ein Update oder einen Neustart durch und zeigen Sie das Formular erneut an.Show:
Private Sub CommandButton3_Click()Me.Hide' выполнение обновления или перезагрузки формыMe.ShowEnd Sub
Diese Kombination von Eigenschaften hilft Ihnen, eine reibungslose und professionellere Benutzererfahrung zu schaffen, indem Sie nur die aktuellen Daten im Formular anzeigen können.
Beachten Sie, dass .Hide und .Show sind nur Eigenschaften eines benutzerdefinierten Formulars und können nicht zum Ein- und Ausblenden von Steuerelementen in einem Formular wie Schaltflächen oder Eingabefeldern verwendet werden.
Verwenden der Methode .Unload
Es gibt eine spezielle Methode in VBA für Excel .Unload, mit dem Sie das Formular neu laden können. Sie können diese Methode verwenden, wenn Sie alle Daten bereinigen und das Formular in seinen ursprünglichen Zustand zurücksetzen müssen.
Ein Beispiel für die Verwendung der Methode .Unload:
Private Sub btnReset_Click()' Очистить все текстовые поляtxtName.Value = ""txtEmail.Value = ""' Скрыть формуMe.Hide' Перезагрузить формуUnload Me' Показать форму зановоUserForm1.ShowEnd Sub
Im obigen Beispiel löst das Button btnReset Klickereignis Code aus, der zuerst die Textfelder im Formular löscht und dann das Formular mithilfe der Methode ausblendet .Hide. Dann die Methode .Unload wird aufgerufen, um das Formular neu zu laden, und danach wird das Formular mit der Methode erneut angezeigt.Show.
Verwenden der Methode .Mit Unload können Sie ein Formular bequem neu laden und den Inhalt des Formulars aktualisieren, ohne das Formular schließen und erneut öffnen zu müssen.