Thema Datum  Von Nutzer Rating
Antwort
29.08.2017 19:52:11 flowers
NotSolved
Blau UserForm
02.09.2017 00:54:21 Ben
NotSolved
Rot OWT
02.09.2017 10:25:43 Gast16081
NotSolved

Ansicht des Beitrags:
Von:
Ben
Datum:
02.09.2017 00:54:21
Views:
616
Rating: Antwort:
  Ja
Thema:
UserForm

Hallo,

mit diesem Code wird eine ListBox1 nach dem Anklicken eine Eintrags in der ComboBox1 gefüllt:

Private Sub ComboBox1_Change()
    Dim rngDB As Range
    Dim rng As Range
    Dim firstAddress As String
    Me.ListBox1.Clear
    With Sheets("Import")
        Set rngDB = .Range(.Cells(2, 1), .Cells(2, 2).End(xlDown))
        With rngDB.Columns(1)
            Set rng = .Find(What:=DateValue(Me.ComboBox1.Value), LookAt:=xlWhole)
            If Not rng Is Nothing Then
                firstAddress = rng.Address
                Do
                    Me.ListBox1.AddItem rng.Offset(columnOffset:=1).Text
                    Set rng = .FindNext(rng)
                    If rng Is Nothing Then Exit Do
                Loop Until rng.Address = firstAddress
            End If
        End With
    End With
End Sub

Private Sub UserForm_Initialize()
    Dim i As Long
    'Dim hsh As Object
    Set hsh = CreateObject("Scripting.Dictionary")
    'Dim hsh As New Scripting.Dictionary
    With Sheets("Import")
        For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
            If Not hsh.Exists(.Cells(i, 1).Text) Then
                hsh(.Cells(i, 1).Text) = 0
            End If
        Next
    End With
    Me.ComboBox1.List = Application.Transpose(hsh.Keys)

End Sub

Vorausgesetzt ist, dass in Spalte B der Tabelle "Import" Inhalte vorhanden sind.

LG, Ben


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
29.08.2017 19:52:11 flowers
NotSolved
Blau UserForm
02.09.2017 00:54:21 Ben
NotSolved
Rot OWT
02.09.2017 10:25:43 Gast16081
NotSolved