Nun würde ich so vorgehen:
If Time(i) Rate(i) = ?
ElseIf Time(i) >= Application.WorksheetFunction.Max(TimeRg) Then
Rate(i) = ?
Else:
[bereits fertiger Teil mit linearer Interpolation]
Nun weiß ich allerdings nicht wie ich den Zinssatz zu dem kleinsten bzw. größten Wert von TimeRg ermittele. Nur bei einer normalen Zinsstrukturkurve könnte ich einfach mit max/min arbeiten, um die Zinssätze zu ermitteln. Es soll allerdings auch für inverse Zinsstrukturkurven und nicht zeitlich sortierte Zeitabfolgen funktionieren. Als 2D-Matrix könnte ich es (vermutlich) auch, aber da ich den Großteil schon als zwei Ranges geschrieben habe, würde ich gern bei diesem Ansatz bleiben. :)
Ich schätze was ich dafür bräuchte ist eine Funktion, die mir die Position des Wertes von Application.WorksheetFunction.Min(TimeRg) in der Range gibt. Hätte ich diesen Wert könnte ich einfach RateRg.Cells(xx) benutzen. Könnt ihr mir eine solche Funktion nennen?
Danke