AW: Daten auswerten mit Array, Pivot, Matrixformel....
Chris
Servus Thomas,
ich geb dir mal ein paar Anregungen:
1. du machst das am besten mit einer UF.
Die Vorgaben finden, das geht wohl am besten mit der Find-Methode:
z.B.:
von oben:
Dim rFinde as Range, rSuche as Range
Set rFinde = Sheets("DeinSheetname").Range("A:A) ' hier Spalte A
Set rSuche = rFinde.Find (what:=Suchstring, LookAt:=xlWhole, LookIn:=xlValues, SearchDirection:= xlNext)
If Not rSuche is nothing Then
lngOben = rSuche.Row ' die Reihe, wo z.B. das erste Jahr anfängt (z.B. 2007)
End if
daselbe in grün für unten:
Set rFinde = Sheets("DeinSheetname").Range("A:A) ' hier Spalte A
Set rSuche = rFinde.Find (what:=Suchstring, LookAt:=xlWhole, LookIn:=xlValues, SearchDirection:= xlPrevious)
If Not rSuche is nothing Then
lngUnten = rSuche.Row ' die Reihe, wo z.B. das erste Jahr anfängt (z.B. 2007)
End if
Jetzt weißt du z.B., wo dein Jahr anfängt und wo es aufhört (z.B.: Anfang Zeile 3 und Ende Zeile 800)
Diese Rückgabewerte kannst du jetzt verwenden, um z.B. den Monat zu finden
hier steht dann für rFinde eben nicht Range("A:A"), sondern Range("B" & lngOben & ":B" & lngUnten), wieder Anfang und Ende suchen, u.s.w. bis du deine Werte hast.
Das Maximum findet man z.B. so:
Max = WorsheetFunction.Max(Range("F" & wasweißich & ":F" & weißichauchnicht))
dasselbe für Min statt .Max eben .Min, u.s.w.
Die Vorgaben kannst du ja z.B. aus einer Combobox auslesen.
Das, was du vorhast ist immenser Programmieraufwand (zumindest zum Schreiben), das macht dir hier keiner. Das musst du schon selbst machen.
Gruß
Chris