VBA UserForm

Excel VBA-Benutzerformular

Benutzerformulare in VBA sind benutzerdefinierte benutzerdefinierte Formulare, mit denen Eingaben eines Benutzers im Format eines Formulars vorgenommen werden können. Es müssen verschiedene Steuerelemente hinzugefügt werden, z. B. Textfelder, Kontrollkästchenbezeichnungen usw., mit denen ein Benutzer einen Wert eingeben kann und es speichert den Wert im Arbeitsblatt, jeder Teil des Benutzerformulars hat einen eindeutigen Code.

Das Benutzerformular ist ein Objekt in der Excel-Oberfläche. In diesem Benutzerformular können wir andere nützliche benutzerdefinierte Dialogfelder erstellen, um die Daten vom Benutzer abzurufen. Wenn Sie mit einer Makrodatei arbeiten, die von Ihrem Senior erstellt wurde oder aus dem Internet heruntergeladen werden kann, müssen Sie ein solches Benutzerformular gesehen haben.

In diesem Artikel zeigen wir Ihnen, wie Sie ein ähnliches Benutzerformular erstellen, um die Daten des Benutzers zu speichern.

Wie erstelle ich ein Benutzerformular?

Ähnlich wie Sie ein neues Modul einfügen, müssen Sie im Visual Basic-Editor auf die Schaltfläche EINFÜGEN klicken, um das Benutzerformular einzufügen.

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

Sobald Sie darauf klicken, wird auch das Benutzerformular eingefügt.

Bevor ich Ihnen erkläre, wie Sie dies programmieren, möchte ich Ihnen zeigen, wie Sie dieses Benutzerformular formatieren.

Benutzerformular formatieren

Wenn Sie das Benutzerformular auswählen und die Taste F4 drücken, wird das Eigenschaftenfenster angezeigt.

Mit diesem Eigenschaftenfenster können wir dieses Benutzerformular formatieren, benennen, die Farbe, den Rahmenstil usw. ändern.

Versuchen Sie auf diese Weise andere Eigenschaften, um das Benutzerformular zu sehen.

Fügen Sie nun für dieses Benutzerformular die Toolbox ein.

Jetzt sehen wir eine Toolbox wie diese.

In diesem Moment wird das Benutzerformular nur eingefügt und nicht programmiert. Um zu wissen, wie es funktioniert, klicken Sie einfach auf die Schaltfläche Ausführen. Das Formular wird im Excel-Arbeitsblatt angezeigt.

Verwenden Sie jetzt das ToolBox-Zeichenetikett.

Geben Sie den Text als Mitarbeiternamen in das Etikett ein.

Für dieses Label können wir also mithilfe von Eigenschaften formatieren. Jetzt haben wir den Text als "Name des Mitarbeiters" eingegeben: Jetzt können wir dies im Eigenschaftenfenster unter Beschriftungen sehen.

Fügen Sie ein weiteres Etikett ein. Um ein weiteres Etikett einzufügen, können Sie entweder auf eine Toolbox klicken oder das aktuelle Etikett ziehen, indem Sie die Strg- Taste gedrückt halten. Sie erhalten eine Replik des aktuellen Etiketts.

Jetzt haben wir das gleiche Etikett.

Ändern Sie den Namen in Mitarbeiter-ID.

Fügen Sie nun auf ähnliche Weise ein weiteres Etikett ein und nennen Sie es "Abteilung".

Fügen Sie nun aus der Toolbox ein Textfeld ein.

Benennen Sie dieses Textfeld im Eigenschaftenfenster als EmpName .

Fügen Sie auf diese Weise zwei weitere Textfelder von der Mitarbeiter-ID bzw. der Abteilung ein. Benennen Sie diese Textfelder gemäß ihrer Überschrift.

Machen Sie es auch für die Abteilung.

Fügen Sie nun aus der Toolbox die Befehlsschaltfläche ein.

Ändern Sie den Namen der Befehlsschaltfläche in "SubmitButton" und die Beschriftung in "Submit".

Fügen Sie eine weitere Schaltfläche ein und nennen Sie sie "Abbrechen".

Um nur die Ausführung zu sehen, drücken Sie die Schaltfläche Ausführen oder verwenden Sie die Taste F5, um zu sehen, wie Ihr Benutzerformular in Excel aussieht.

Jetzt kommt es zur Form.

VBA-Code

Jetzt gibt der Benutzer Daten in dieses ein, daher müssen wir diese programmieren, um die vom Benutzer eingegebenen Daten in diesem Formular zu speichern.

Doppelklicken Sie auf die Schaltfläche SENDEN, um zum Makrofenster mit einem automatisch erstellten Makro wie dem folgenden zu gelangen.

It says SubmitButton click, remember we had given a name for SUBMIT button as SubmitButton.

So, whenever we want to call this button we can call this by this name (submit button). Inside this macro copy and paste the below code.

Code:

 Private Sub SubmitButton_Click() Dim LR As Long LR = Cells(Rows.Count, 1).End(xlUp).Row + 1 Cells(LR, 1).Value = EmpName.Value Cells(LR, 2).Value = EmpID.Value Cells(LR, 3).Value = Dept.Value EmpName.Value = "" EmpID.Value = "" Dept.Value = "" End Sub 

  • EmpName.Value here EmpName is the text box name we had given while creating the employee name text box.
  • EmpID.Value here EmpID is the text box name of Employee ID text box.
  • Dept.Value this is department text box name.

So, on the click on submit button it will store the values in the mentioned cells.

Now double click on Cancel button, this will also show you the auto macro name like this.

Copy the below code and paste.

Code:

 Private Sub CancelButton_Click() MyUserForm.Hide End Sub 

MyUserForm is the name we had given to the userform. MyUserForm.Hide means on the click on the CANCEL button it will hide the userform.

Ok, now create a template like this in the worksheet.

Delete all the other sheets in the workbook except this template sheet.

Now go to Visual Basic Editor.

And run the macro using F5 key or manually, we will see user form in front of us.

Enter the employee name, employee id, and Department name.

Now if you click on the SUBMIT button, it will store the values on to the template we have created.

Like this you can keep entering the names, userform will keep storing the values entered by the user in the specified cells.

So by using USER FORM, we can actually create wonderful projects to get the information from the user.