Wenn Userforms in Excel VBA erstellen, können Sie die Controls-Auflistung durch Kontrollen auf einfache Schleife verwenden und eine Eigenschaft jeder Kontrolle auf einen bestimmten Wert festgelegt.

Die Userform werden wir aussehen wie folgt erstellen:

Controls Collection in Excel VBA

Um diese Userform zu erstellen, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie den Visual Basic-Editor. Wenn das Projekt-Explorer nicht sichtbar ist, klicken Sie auf Ansicht, Projekt-Explorer.

  2. Klicken Sie auf Einfügen, Benutzerformular. Wenn die Toolbox nicht automatisch angezeigt wird, klicken Sie auf Ansicht, Toolbox. Ihr Bildschirm sollte wie unten aufgebaut werden.

Userform Screen Setup in Excel VBA

  1. das Etikett hinzufügen, Textfelder (zuerst die zweiten unter dem ersten, an der Spitze, und so weiter) und den Befehlsschaltflächen. Sobald dies abgeschlossen ist, sollte das Ergebnis mit dem Bild von der Userform gezeigt früher konsistent sein. Erstellen Sie zum Beispiel ein Textfeld-Steuerelement von der Toolbox auf TextBox klicken. Als nächstes können Sie ein Textfeld auf der Userform ziehen.

  2. Um die Beschriftung der Userform, Etiketten- und Befehlsschaltfläche zu ändern, klicken Sie auf Ansicht, Eigenschaften-Fenster und auf jedes Steuerelement klicken.

  3. die Userform zu zeigen, eine Befehlsschaltfläche auf dem Arbeitsblatt platzieren und die folgende Codezeile hinzu:

Private Sub CommandButton1_Click()

UserForm1.Show vbModeless

End Sub

Erläuterung: durch Zugabe von VbModeless, können Sie die Userform und die Arbeit in Ihrem Arbeitsblatt zur gleichen Zeit nutzen.

Wir haben nun den ersten Teil der Userform erstellt. Obwohl es schon ordentlich aussieht, wird noch nichts geschehen, wenn wir auf den Befehlsschaltflächen auf dem Benutzerformular klicken.

  1. Öffnen Sie den Visual Basic-Editor.

  2. Geben Sie in dem Projekt-Explorer, klicken Sie doppelt auf UserForm1.

  3. Doppelklicken Sie auf den Befehlsschaltflächen.

  4. die folgenden Codezeilen hinzu:

Private Sub CommandButton1_Click()

Dim i As Integer

For i = 1 To 10

Controls("TextBox" & i).Value = Cells(i + 1, 1).Value

Next i

End Sub

Erläuterung: Mit nur wenigen Zeilen Code, können wir die Textfelder mit den Telefonnummern aus dem Blatt füllen. Wir verwenden den Operator & verketten (verbinden) die Elemente. Diese Codezeilen arbeiten, weil wir nicht die Namen des Textfeld-Steuerelemente geändert haben (TextBox1, TextBox2, TextBox3, etc). Um die Namen der Steuerelemente zu ändern, klicken Sie auf Ansicht, Eigenschaften-Fenster und klicken Sie auf jede Kontrolle.

Ergebnis, wenn Sie auf das Befehlsschaltflächen auf dem Blatt klicken:

Controls Collection Result