Direkt zum Inhalt

Wie fülle ich ein Textfeld basierend auf der Auswahl der Combobox in UserForm in Excel aus?

Angenommen, Sie haben eine Tabelle, die eine Spalte mit Namen und eine Mitarbeiternummer enthält (siehe Abbildung unten). Jetzt müssen Sie ein Benutzerformular erstellen, in das ein Kombinationsfeld eingebettet ist, in dem alle Namen erfasst sind, und ein Textfeld, in das die entsprechende Personalnummer eingetragen wird, wenn Sie den Namen aus dem Kombinationsfeld auswählen. Die Methode in diesem Artikel kann Ihnen dabei helfen, das Problem zu beheben.

Füllen Sie das Textfeld basierend auf der Combobox-Auswahl in Userform mit VBA aus


Füllen Sie das Textfeld basierend auf der Combobox-Auswahl in Userform mit VBA aus

Gehen Sie wie folgt vor, um das Textfeld mit dem entsprechenden Wert basierend auf der Auswahl der Combobox im Benutzerformular zu füllen.

1. Drücken Sie die Taste Andere + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. In dem Microsoft Visual Basic für Applikationen Klicken Sie im Fenster Insert > Benutzerformular. Siehe Screenshot:

3. Fügen Sie dann ein Kombinationsfeld-Steuerelement und ein Textfeld-Steuerelement in das erstellte Benutzerformular ein (siehe Abbildung unten).

4. Klicken Sie mit der rechten Maustaste auf eine leere Stelle im Benutzerformular, und klicken Sie dann auf Code anzeigen aus dem Kontextmenü. Siehe Screenshot:

5. Kopieren Sie im sich öffnenden Fenster Userform (Code) den folgenden VBA-Code und fügen Sie ihn ein, um das Original zu ersetzen.

VBA-Code: Füllen Sie das Textfeld basierend auf der Auswahl der Combobox im Benutzerformular aus

Dim xRg As Range
'Updated by Extendoffice 2018/1/30
Private Sub UserForm_Initialize()
    Set xRg = Worksheets("Sheet5").Range("A2:B8")
    Me.ComboBox1.List = xRg.Columns(1).Value
End Sub
Private Sub ComboBox1_Change()
    Me.TextBox1.Text = Application.WorksheetFunction.VLookup(Me.ComboBox1.Value, xRg, 2, False)
End Sub

Note: Im Code ist A2:B2 der Bereich, der die Werte enthält, die Sie separat sowohl im Kombinationsfeld als auch im Textfeld des Benutzerformulars ausfüllen. Und Sheet5 ist der Name des Arbeitsblatts, das den Datenbereich enthält. Bitte ändern Sie sie nach Bedarf.

6. Drücken Sie die Taste Andere + Q Tasten zum Verlassen des Microsoft Visual Basic für Applikationen Fenster.

7 Klicken Entwickler:in / Unternehmen > Insert > Befehlsschaltfläche (ActiveX Control) um eine Befehlsschaltfläche in das Arbeitsblatt einzufügen.

8. Klicken Sie mit der rechten Maustaste auf die Blattregisterkarte und wählen Sie aus Code anzeigen aus dem Rechtsklick-Menü. Kopieren Sie dann den VBA-Code und fügen Sie ihn in das Codefenster ein.

VBA-Code: Benutzerformular anzeigen

Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
    UserForm1.Show
End Sub

9. Deaktivieren Sie den Entwurfsmodus in der Arbeitsmappe.

Klicken Sie auf die Befehlsschaltfläche, um das angegebene Benutzerformular zu öffnen. Dann können Sie sehen, dass alle Namen im Kombinationsfeld gesammelt sind. Wenn Sie einen Namen aus dem Kombinationsfeld auswählen, wird die entsprechende Notenzeilennummer automatisch in das Textfeld eingefügt, wie im folgenden Screenshot gezeigt.


In Verbindung stehende Artikel:

Beste Office-Produktivitätstools

🤖 Kutools KI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Erstellen Sie benutzerdefinierte Formeln  |  Analysieren Sie Daten und erstellen Sie Diagramme  |  Rufen Sie Kutools-Funktionen auf...
Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...

Beschreibung


Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
can the same be don on excel sheet? instead of userform? i am using sheet not userform
This comment was minimized by the moderator on the site
alguem poderia me ajudar estou tentando carregar a combobox e puxar informações para text box so que esta dando erro 381

Private Sub ComboNome_Emissor_Change()
TextArea.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 1)
TextTreinamento_PT.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 3)
TextTreinamento_EC.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 5)
TexStatus_Bloqueio.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 6)


End Sub
This comment was minimized by the moderator on the site
The method is very simple and populates the combo box quite efficiently. However, when I try populating the text box, I get a run-time error '1004': Unable to get the VLookup property of the WorksheetFunction class. Kindly assist with resolving this error.
This comment was minimized by the moderator on the site
I just tried this code and was running into the same issue. I realized I had the xRg variable inside the UserForm block, so it was not being accessed by my ComboBox function. Maybe others are running into the same issue
This comment was minimized by the moderator on the site
Hi,
May I have your Office version? I need the feedback to check for the error.
Thanks for your comment.
This comment was minimized by the moderator on the site
office 2010 32 bit
This comment was minimized by the moderator on the site
Good day,
I have tried the code in Office 2010 32 bit, but no errors occured.
Please make sure the sheet name and cell range in the first VBA code are the same with your actual sheet name and range.
Thanks for your comment.
This comment was minimized by the moderator on the site
Hi,
i have same issue with office 2013. Any solution please
This comment was minimized by the moderator on the site
i have the same problem....
This comment was minimized by the moderator on the site
I too have the same problem
This comment was minimized by the moderator on the site
Hi Chaylon,
Have you replaced the sheet name in the below code line with your actual used worksheet name?
Set xRg = Worksheets("Sheet5").Range("A2:B8")
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations