in meiner Beispieldatei möchte ich die den range(cells (9,1),cells (letztezeile, 1)) nach dem Datum in cells(1,1) durchsuchen. Das Datum kann mehrfach vorkommen, aber immer im Block.
Im Anschluss möchte ich die Werte 1 bis 3 nach dem gesuchten Datum mit Application.WorksheetFunction.Sum
Bisher mach ich das mit einer For-Schleife, die die erste und letzte Zeile des Bereiches findet.
Gibt es hierfür eine andere Lösung? Vielleicht .Find oder -Application.Match?
Sub abc() With Range(Cells(9, 1), Cells(Rows.Count, 1).End(xlUp)).Resize(, 5) MsgBox Evaluate("=SumProduct((" & .Columns(1).Address & "=$A$1)*" & .Columns(3).Resize(, 3).Address & ")") End With End Sub
Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28 • tmessers
On Error GoTo fehler Range(Cells(ersteDatumsZeile + 8, 3), Cells(letzteDatumsZeile + 8, 5)).Select 'diese Zeile nur zum Testen und Prüfen , damit man sieht ob der Code richtig arbeitet Cells(1, 2) = Application.Sum(Range(Cells(ersteDatumsZeile + 8, 3), Cells(letzteDatumsZeile + 8, 5)))
fehler: If Err.Number > 0 Then MsgBox "Das angegebene Datum wurde nicht gefunden." End Sub
Gruß Atilla
Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:1 Nutzer sagt Danke an atilla für diesen Beitrag 28 • tmessers