Clever-Excel-Forum

Normale Version: ComboBox auswahl
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Community,

Ich habe eine Frage zu dem Letzten Beitrag https://www.clever-excel-forum.de/Thread...n-Speziell
Ich habe mir das ganze nochmal angeschaut und habe die Tabelle umgebaut.

Frage / Problem:

Wegen dem umgebaut geht jetzt natürlich die Routine nicht mehr.
Ich Lade meine Datei hoch dort ist alles erklärt.

Lg Flo
Hallo Florian,

es ist immer hilfreich, wenn man die angewendetet Quelltexte versteht, bevor man daran Änderungen vornimmt. Guckst du:  StZei = Application.Match(.Text, Tabelle1.Rows(1), 0)
Hallo Klaus Dieter,

Das hab ich nicht gesehen, das ich das auch so einfach machen kann.

Aber es geht nicht, es geht nur zum teil.

Es wird nicht alles eingelesen.

Weil ja bei der Ziel Zeile ein Ragne angegeben ist also ("A") .
Aber test2 ist ja nicht bei "A" sondern bei "G"

Test3 wäre dann Bei "M" und Test4 bei "S" und so weiter immer +6
Ich habe jetzt eine lösung gefunden.

Aber diese Liest auch leer Zeilen ein.

Code:
Private Sub ComboBoxSpeichern_Change()

   Dim StZeile As Long
   Dim ZiZeile As Long
   
   
' Hier werden die Daten aus der Tabelle gestzt
With ComboBoxSpeichern
   
   StZeile = Application.Match(.Text, Tabelle1.Rows(1), 0)    ' Eintrag der combobox in der tabelle suchen
   ZiZeile = StZeile + 5                                      ' Zeile gefunden Range festlegen

    ListBox1.List = Tabelle1.Range(Columns(StZeile), Columns(ZiZeile)).Value

End With
End Sub
Hallo,

(25.09.2018, 13:56)Florian20 schrieb: [ -> ]Aber diese Liest auch leer Zeilen ein.

welche leeren Zeilen? Und warum zweimal Columns?
Oder:


Code:
Private Sub UserForm_Initialize()
    ComboBoxSpeichern.List = Split(Application.Trim(Join(Application.Transpose(Application.Transpose(Tabelle1.UsedRange.Rows(1))))))
End Sub


Private Sub ComboBoxSpeichern_Change()
   ListBox1.List = Tabelle1.UsedRange.Offset(, ComboBoxSpeichern.ListIndex * 6).Resize(, 6).Value
End Sub
Hi,

Das klappt ja super, aber es liest trotzdem leere Zeilen und die 1te Zeile in die ListBox1 ein.
Hab es mal Umgebaut und jetzt liest es keine Leeren Zeilen Mehr ein. :19:

Aber immer noch die 1te Zeile.

Code:
Private Sub ComboBoxSpeichern_Change()

' Eintrag in ComboBox in Tabelle suchen / in ListBox setzen
Dim StZeile As Long
Dim ZiZeile As Long
Dim letzte As Long

' Eintrag der combobox in der tabelle suchen

    StZeile = Application.Match(ComboBoxSpeichern.Text, Tabelle1.Rows(1), 0)
       ZiZeile = StZeile + 5
   letzte = Tabelle1.Range(Columns(StZeile), Columns(ZiZeile)).End(xlDown).Row

' Einträge in ListBox Setzen

   ListBox1.List = Tabelle1.UsedRange.Offset(, ComboBoxSpeichern.ListIndex * 6).Resize(letzte, 6).Value

End Sub
Hallo Florian,

versuche es mal damit:


Code:
Private Sub ComboBoxSpeichern_Change()
   Dim StSp As Integer
   Dim ZiZei As Integer
   With ComboBoxSpeichern
       StSp = Application.Match(.Text, Tabelle1.Rows(1), 0)
       ZiZei = Cells(1, StSp).End(xlDown).Row
       ListBox1.List = Range(Cells(1, StSp), Cells(ZiZei, StSp)).Value
   End With
End Sub
So klappt's:


Code:
Private Sub ComboBoxSpeichern_Change()
   ListBox1.List = Tabelle1.UsedRange.Offset(1, ComboBoxSpeichern.ListIndex * 6).Resize(Tabelle1.UsedRange.Rows.Count - 1, 6).Value
End Sub