Hallo,
ich habe gerade meine ersten Versuche mit Visual basic gestartet und bin auf ein Problem gestoßen,
dass ich auch nach langem Probieren nicht lösen konnte.
Diese Interpolationsfunktion habe ich fertig gefunden und wollte nun die Ergebnisse von Werte(i)
in die spalten links von dieser Funktion ausgeben.
Public
Function
Interpolation(ZeitBereich
As
Range, WertBereich
As
Range, t
As
Double
)
As
Double
Dim
I
As
Long
, j
As
Long
, Werte()
As
Double
, N
As
Long
N = WertBereich.Cells.Count
ReDim
Werte(1
To
N)
For
I = 1
To
N
Werte(I) = WertBereich(I)
Next
I
For
I = 1
To
N
For
j = N
To
I + 1
Step
-1
Werte(j) = (Werte(j) - Werte(j - 1)) / (ZeitBereich(j) - ZeitBereich(j - I))
Next
j
Next
I
Interpolation = 0
For
I = N
To
1
Step
-1
Interpolation = Interpolation * (t - ZeitBereich(I)) + Werte(I)
Next
I
End
Function
Ich habe bereits versucht die aktive Zelle zu versetzen und dann die einzelnen Werte in die Zellen zu schreiben,
dabei erhalte ich aber nur eine Zirkelbezugswarnung weil die Zellenposition nicht verändert wird und das
Ergebnis
"interpolation"
überschrieben wird.
ActiveCell.Offset(0, -1).
Select
ActiveCell.Value = Werte(1)
ActiveCell.Offset(0, 1).
Select
ActiveCell.Value = Werte(2)
...
Kann mir jemand einen Tipp geben wie ich diese Werte ausgeben kann.
Gruß
Paul