Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Combobox auslesen


Betrifft: Combobox auslesen von: Patrick
Geschrieben am: 20.01.2019 13:21:56

Hallo liebe VBA Nutzer.

Ich habe folgendes Problem:

Ich habe eine Userform mit Comboboxen erstellt.

Dabei habe ich eine "erste " Combobox (Namen: cobTeileZ1), die zuerst ausgewählt werden soll. Danach kann erst die zweite Combobox (Namen: cobKernnrZ1_a)in der aktiven UserForm ausgewählt werden.
Nun möchte ich den Wert der zweiten Combobox auslesen und an einer Stelle im Tabellenblatt speichern. Sobald ich die UserForm ausführe und es teste und die Userform im Anschluss beende finde ich den Wert der zweiten Combobox nicht im Tabellenblatt. Ein Fehler wird ebenfalls nicht angegeben.

Hier der Quellcode. Ich hoffe ihr könnte mir helfen. Vielen Dank im Voraus.

Private Sub UserForm_Activate()

    Worksheets("Buch").Activate
    Dim sh As Worksheet
    Set sh = ThisWorkbook.Sheets("Aktuelleteile")
    
    '1)Programmierung der ersten Combobox Teile
    Dim x1 As Integer
    Me.cobTeileZ1.Clear 
    UserForm1.cobTeileZ1.clear
    For x1 = 1 To Application.WorksheetFunction.CountA(sh.Range("1:1")) 
    Me.cobTeileZ1.AddItem sh.Cells(1, x1).Value 
    Next x1
              
End Sub


Private Sub cobTeileZ1_Change()
        Dim sh As Worksheet
        Set sh = ThisWorkbook.Worksheets("Teile")
        
        Dim x, y, z As Integer
        
        Dim KernIDZ1_a As String
        Dim RegKarteZ1_a As String
        Dim ZeilenposZ1_a As String
        Dim VarZ1_a_Ag1, VarZ1_a_Ag2, VarZ1_a_Ag3, VarZ1_a_Ag4, VarZ1_a_Ag5, VarZ1_a_Ag6,  _
VarZ1_a_Ag7 As Integer
        
        Dim KernIDZ1_b As String
        Dim RegKarteZ1_b As String
        Dim ZeilenposZ1_b As String
        Dim VarZ1_b_Ag1, VarZ1_b_Ag2, VarZ1_b_Ag3, VarZ1_b_Ag4, VarZ1_b_Ag5, VarZ1_b_Ag6,  _
VarZ1_b_Ag7 As Integer
        
        y = Application.WorksheetFunction.Match(Me.cobTeileZ1.Value, sh.Range("1:1"), 0)
        Me.cobKernnrZ1_a.Clear
        For x = 2 To Application.WorksheetFunction.CountA(sh.Cells(1, y).EntireColumn)
        Me.cobKernnrZ1_a.AddItem sh.Cells(x, y).Value
        Next x
        Me.cobKernnrZ1_b.Clear
        For z = 2 To Application.WorksheetFunction.CountA(sh.Cells(1, y).EntireColumn)
        Me.cobKernnrZ1_b.AddItem sh.Cells(z, y).Value
        Next z
        
        ThisWorkbook.Worksheets("Buch").Range("A3") = Me.cobKernnrZ1_a

End Sub

  

Betrifft: AW: Combobox auslesen von: Piet
Geschrieben am: 20.01.2019 14:06:39

Hallo Patrick

bei dem gesendeten Code fehlen ja m.E. wichtige Teile. Ich sehe keinen Code der die 2. ComboBox füllt, und keinen Code mit dem die ComboBox 2 ins Tabellen Blatt schreibt. So ist Fehlersuche schwierig! Kannst du uns diese Codeteile bitte nachreichen.

mfg Piet


Beiträge aus dem Excel-Forum zum Thema "Combobox auslesen"