VBA Zeitraum suchen

Guten Tag,

Ich brauche mal eure Hilfe bei einer VBA-Programmierung!
Ich habe folgenden Code kreiert:

Private Sub UserForm\_Initialize()

Dim xAdresse, xErste As String
Dim y As Boolean
Dim arr() As Variant
Dim rng As Range
Dim iRowU As Integer
Dim xSuche As Variant

ListBox1.Clear
With ListBox1
 .ColumnCount = 4
 .ColumnWidths = "2cm;2cm;2cm;10cm"

xSuche = Date 'Datum soll kleiner gleich Heute bzw. bis Heute finden!!!
 Set rng = Worksheets("Erinnerungen").Cells.Find \_
 (xSuche, LookIn:=xlValues)
 If Not rng Is Nothing Then
 With Worksheets("Erinnerungen")
 xErste = rng.Address(False, False)
 y = True
 Do Until xAdresse = xErste
 ReDim Preserve arr(0 To 4, 0 To iRowU)
 arr(0, iRowU) = .Cells(rng.Row, 1)
 arr(1, iRowU) = .Cells(rng.Row, 2)
 arr(2, iRowU) = .Cells(rng.Row, 3)
 arr(3, iRowU) = .Cells(rng.Row, 4)
 iRowU = iRowU + 1
 Set rng = .Cells.FindNext(after:=rng)
 xAdresse = rng.Address(False, False)
 Loop
 xAdresse = ""
 xErste = ""
 End With
 End If

If y = False Then
 MsgBox "Kein Termin vorhanden!"
Else
 ListBox1.Column = arr
End If
End With

End Sub

Mein Problem ist, ich möchte gerne die Daten bis zum heutigen Datum aus der Liste suchen! Nur dummerweise sucht mir mein Code nur die Daten von Heute. Ich weiß, dass ich die Programmierung von „xSuche“ ändern muss, aber alles was ich bis jetzt ausprobiert habe führte nicht zum Erfolg!! Drum hoffe ich das einer eurer schlauen Köpfe mir weiter helfen kann.

Vielen Dank schonmal im voraus!

Ich brauche mal eure Hilfe bei einer VBA-Programmierung!

Hallo Jedda,

lade mal eine Beispielmappe hoch mit FAQ:2606

Gruß
Reinhard

Ok, habs bei Rapidshare hochgeladen. Hier der Link:

http://rapidshare.com/files/310207416/Beispielmappe…

In der UserForm, die da bei Knopfdruck geöffnet wird, sollen alle Daten aus der Tabelle angezeigt werden, die bis zu dem heutigen Datum drin sind.

Hallo Jedda,

rapidShare meint wohl echt ich will da Mitglied werden :smile:

http://www.bilder-space.de/show.php?file=21.111Gs9nl…

Du hast da eine XL2007-Mappe, speichere sie in XL2007 als alte xls-Mappe ab, oder wenn dann was nicht mehr funktioniert, benenne sie per Explorer einfach um in eine xls.
Dann lade sie neu hoch. Sag halt Bescheid was du getan hast.

Gruß
Reinhard

da waren zu der Zeit wohl gerade die Server überlastet, bei mir geht’s zumindest ;D

naja, ich habe das nun nochmal bei RapidShare hochgeladen (diesmal in *.xls), ich hoffe diesmal gibt es keine Probleme, sonst benutze ich nächstes Mal was anderes.

hier der Link, damit wir denn mal zum eigentlichen Problem kommen können =] :

http://rapidshare.com/files/310331479/Beispielmappe…

hier der Link, damit wir denn mal zum eigentlichen Problem
kommen können =] :

http://rapidshare.com/files/310331479/Beispielmappe…

Hallo Jedda,

probiers mal so:

Private Sub UserForm\_Initialize()
Dim Zei As Long, Heute As Date, arr() As Variant, Anz As Long
Heute = Date
With Worksheets("Erinnerungen")
 For Zei = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
 If .Cells(Zei, 1).Value 0 Then
 .ColumnCount = 4
 .ColumnWidths = "2cm;2cm;2cm;10cm"
 .Column = arr
 Else
 MsgBox "Kein Termin vorhanden!"
 End If
End With
End Sub

Gruß
Reinhard

Hi Reinhard,

erstmal vielen, vielen Dank!!! Genau so hatte ich mir das vorgestellt!
Da wurde im Endeffekt zwar doch mehr umgebaut als ich dachte, ABER es funktioniert :smiley:. Danke

Hoffe, dass kann ich mal wieder gut machen ;D