AW: Datumfilter in Excel (Mustermappe)
25.10.2012 11:02:59
hary
Hallo Gregor
Die ganze Nacht hab ich gegruebelt was du meinst. Heute morgen kamm's.
Hier der Codeteil wo ich was geaendert(auskommentiert) habe.
Dim arrFind()
Dim arrDaten() As Long '----geaendert
Dim n As Double
Dim intlastRow, Start, ZeileEnd, Beginn As Double
Dim Muster, Blattname As Variant
n = 0
Application.ScreenUpdating = False
Application.EnableEvents = False
With Worksheets(1)
intlastRow = .Cells(Rows.Count, 4).End(xlUp).Row
For Start = 3 To intlastRow
Muster = .Cells(Start, 1).Value
If Muster = "" Then
Muster = .Cells(Start, 1).End(xlDown).Value
Start = .Cells(Start, 1).End(xlDown).Row
End If
ZeileEnd = IIf(IsEmpty(.Cells(Start + 1, 1)), IIf(IsEmpty(.Cells(.Cells(Start, 1). _
End(xlDown).Row - 1, 5)), .Cells(.Cells(Start, 1).End(xlDown).Row, 5).End(xlUp).Row, .Cells(Start, 1).End(xlDown).Row - 1), Start)
For Beginn = Start To ZeileEnd
If Not IsEmpty(Worksheets(1).Cells(Beginn, 23)) Then
n = n + 1
ReDim Preserve arrFind(1 To 19, 1 To n) As Variant
arrFind(1, n) = Muster
arrFind(2, n) = .Cells(Beginn, 4).Value
arrFind(3, n) = .Cells(Beginn, 5).Value
arrFind(4, n) = .Cells(Beginn, 7).Value
arrFind(5, n) = .Cells(Beginn, 8).Value
arrFind(6, n) = .Cells(Beginn, 9).Value
arrFind(7, n) = .Cells(Beginn, 10).Value
arrFind(8, n) = .Cells(Beginn, 11).Value
arrFind(9, n) = .Cells(Beginn, 12).Value
arrFind(10, n) = .Cells(Beginn, 13).Value
arrFind(11, n) = .Cells(Beginn, 14).Value
arrFind(12, n) = .Cells(Beginn, 15).Value
arrFind(13, n) = .Cells(Beginn, 16).Value
arrFind(14, n) = .Cells(Beginn, 17).Value
arrFind(15, n) = .Cells(Beginn, 18).Value
arrFind(16, n) = .Cells(Beginn, 19).Value
arrFind(17, n) = .Cells(Beginn, 20).Value
arrFind(18, n) = .Cells(Beginn, 21).Value
arrFind(19, n) = .Cells(Beginn, 22).Value
ReDim Preserve arrDaten(1 To 1, 1 To n) As Long '----geaendert
arrDaten(1, n) = DateValue(.Cells(Beginn, 23)) '----geaendert
End If
Next Beginn
gruss hary