AW: Datumfinden/Anderes auswählen
12.04.2020 11:48:39
Max
Erst mal Frohe Ostern und danke Hary,
ich hab jetzt selber auch eine Lösung ist vllt ein bischen umständlicher aber klappt.
Dim A As Long
Dim B As Long
Dim A_1 As Variant
Dim B_1 As Variant
Dim La As Long
Dim Lb As Long
Dim LetzteZeile As Long
'Letztegefüllte Zeile ermitteln in A:A,B:B
La = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Lb = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
If La >= Lb Then
LetzteZeile = La
Else
LetzteZeile = Lb
End If
Range(Cells(9, 1), Cells(LetzteZeile, 1)).Copy
Range("D9").Select
ActiveSheet.Paste
Application.CutCopyMode = False
'Sortierung absteigend für Match A
Range("E9").Value = 1
Range(Cells(9, 5), Cells(9, 5)).Select
Selection.AutoFill Destination:=Range(Cells(9, 5), Cells(LetzteZeile, 5)), Type:= _
xlFillSeries
Range(Cells(9, 4), Cells(LetzteZeile, 5)).Select
ActiveWorkbook.Worksheets("Auswertung").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Auswertung").Sort.SortFields.Add2 Key:=Range( _
Cells(9, 5), Cells(LetzteZeile, 5)), SortOn:=xlSortOnValues, Order:=xlDescending, _
DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Auswertung").Sort
.SetRange Range(Cells(9, 4), Cells(LetzteZeile, 5))
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
A_1 = CDbl(Range("G7"))
B_1 = CDbl(Range("G8"))
On Error Resume Next
If Not IsError(Application.Match(A_1, Range("D:D"), 0)) Then
A = Application.Match(A_1, Range("D:D"), 0)
Else
A = Application.Match(A_1, Range("D:D"), -1)
End If
If Not IsError(Application.Match(B_1, Range("A:A"), 0)) Then
B = Application.Match(B_1, Range("A:A"), 0)
Else
B = Application.Match(B_1, Range("A:A"), 1)
End If
'A Anpassen
A = LetzteZeile - A + 9
ActiveWorkbook.Worksheets("Auswertung").Range(Cells(9, 4), Cells(LetzteZeile, 5)). _
ClearContents
Range(Cells(A, 1), Cells(B, 2)).Copy
Range("D9").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("I7").Value = A_1
Range("I8").Value = B_1