Hi,
ActiveCell.FormulaR1C1= "=R[-"&diff&"]C[-3]+((R[1-"&diff&"]C[-3]-R["&diff&"]C[-3])/(R[1-"&diff&"]C[-4]-R["&diff&"]C[-4])*(R[1-"&diff& "]C[-2]-R["&diff&"]C[-4]))".
das kann nicht gehen.
Bei der Übergabe an die Zelle müssen die Zeilen- und Spaltennummern bereits berechnet sein, was in Deinem Beispiel nicht der Fall ist:
… +((R[1-"&diff&"]C[-3]- …
Du verknüpfst heir einfach die Zeile "1-" mit dem, was in diff steht, wobei alles außer diff eine Zeichenfolge (String) ist. Die 1 wird also nicht als Ziffer anerkannt. Das wäre eine Möglichkeit:
x = 1 - diff
ActiveCell.FormulaR1C1 = "=R[-" & diff & "]C[-3]+((R[" & x & "]C[-3]-R[" & diff & "]C[-3])/(R[" & x & "]C[-4]-R[" & diff & "]C[-4])*(R[" & x & "]C[-2]-R[" & diff & "]C[-4]))"
Viele Grüße
Jörg