Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Auflisten von Datums in einer Listbox
Datums
Hallo alle nochmal,
da ich nicht gezielt das finde was ich suche, bitte ich um eure Hilfe.
In einem Userform habe ich eine ListBox1 sowie ComboBox1.
In Zelle A2 bis A50 habe ich verschiedene Datum (immer sortiert) stehen.
Nun will ich dass im ComboBox1 zunächst alle Datum (ohne Duplikate) aufgelistet haben, im ListBox1 sollen aber, nicht zu dem Datum ausgewählten Datum die Werte anzeigen, sondern sollen alle Datums auflisten bis zu dem Zeitpunkt, z.B. wenn ich 24.09.2009 im ComboBox1 auswähle, sollen alle Datum im ListBox1 gleich / kleiner als 24.09.2009 erscheinen.
Ich hoffe ich war verständlich.... :-)
Danke und LG
Urmila

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Auflisten von Datums in einer Listbox
25.09.2009 14:41:07
Datums
Servus,
vom Prinzip her so:
Private Sub ComboBox1_Change()
ListBox1.Clear
For i = 0 To ComboBox1.ListIndex
ListBox1.AddItem ComboBox1.List(i)
Next i
End Sub

Private Sub UserForm_Activate()
ComboBox1.AddItem Sheets(3).Cells(2, 1)
For i = 3 To 50
If CDate(Sheets(3).Cells(i, 1))  CDate(ComboBox1.List(ComboBox1.ListCount - 1)) Then
ComboBox1.AddItem Sheets(3).Cells(i, 1)
End If
Next i
End Sub
Gruß
Chris
AW: Auflisten von Datums in einer Listbox
25.09.2009 15:03:56
Datums
Hallo,
ich nehme mal an:
- deine Tabelle hat 2 Spalten "Datum - Wert" und ebenso die Listbox.
- die Tabelle heißt "Tabelle1" und in der ersten Zeile stehen Überschriften.
- Spalte A ist als Datum formatiert.
Dann könnte dir der folgende Ansatz weiterhelfen.
Gruß
Christian

Option Explicit
Private Sub ComboBox1_Change()
Dim lngLim&, i&
Me.ListBox1.Clear
lngLim = CDate(Me.ComboBox1)
With Sheets("Tabelle1")
For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
If .Cells(i, 1) > lngLim Then Exit For
Next
Me.ListBox1.List = .Cells(2, 1).Resize(i - 2, 2).Value
End With
End Sub
Private Sub UserForm_Initialize()
Dim hshDat As Object, i&
Set hshDat = CreateObject("Scripting.dictionary")
With Sheets("Tabelle1")
For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
hshDat(.Cells(i, 1).Text) = .Cells(i, 1).Text
Next
End With
Me.ComboBox1.List = hshDat.items
End Sub

Anzeige
AW: Auflisten von Datums in einer Listbox
25.09.2009 15:13:43
Datums
Hallo Urmila,
das könnte z. B. so funktionieren:
Option Explicit
Private Sub ComboBox1_Change()
Dim iCoBo  As Integer
ListBox1.Clear
With ComboBox1
For iCoBo = 0 To .ListIndex
ListBox1.AddItem .List(iCoBo)
Next iCoBo
End With
End Sub

Private Sub UserForm_Initialize()
Dim colItem    As New Collection
Dim strItem    As String
Dim WkSh       As Worksheet
Dim lZeile     As Long
ComboBox1.Clear
Set WkSh = Worksheets("Tabelle1")
For lZeile = 2 To WkSh.Cells(Rows.Count, 1).End(xlUp).Row
If WkSh.Cells(lZeile, 1).Value  "" Then
strItem = WkSh.Cells(lZeile, 1).Value
'           Collection liefert Fehler, wenn Wert bereits in Collection enthalten ist
On Error Resume Next
Err.Clear
'           Eintrag zur Collection hinzufügen
colItem.Add strItem, Key:="MB" & strItem
'           wenn kein Fehler vorliegt, füge den Wert in die ComboBox ein
If Err.Number = 0 Then ComboBox1.AddItem strItem
End If
Next lZeile
End Sub

Gruß Peter
Anzeige
Danke vielmals an Chris, Christian & Peter :-)
28.09.2009 08:23:13
Urmila
LG
Urmila

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige