Hallo nochmal,
da habe ich völligen Quatsch geschrieben! Ich habe dich falsch verstanden: Wie du siehst schreibt der Code immer die gleiche Formel in die Zellen - das wolltest du wohl nicht?
Du wolltest wohl eher, daß die Struktur der Formel nach unten übertragen wird.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Sub v()
Dim i As Integer , ZdZmeF As Integer , ZdZmlF As Integer , SdZmF As Integer
ZdZmeF = 7
ZdZmlF = 9
SdZmF = 5
ActiveSheet.Range(Cells(ZdZmeF, SdZmF), Cells(ZdZmlF, SdZmF)).ClearContents
For i = ZdZmeF To ZdZmlF
ActiveSheet.Cells(i, SdZmF).FormulaR1C1 = "=-RC[1]+2*RC[2]-RC[3]"
Next i
End Sub
|
Da du nicht verraten hast wo deine Zelle liegt, in der die erste Formel ist und unter der die weiteren Formeln stehen, habe mal gedacht es ist "E7" also direkt daneben.
Die RC-Schreibweise gibt - ausgehend von der Zelle in der die Formel ist - die Lage von Zellen an, die in der Formel verwendet werden.
RC[1] heißt: gleiche Zeile, eine Spalte nach rechts.
RC[-2] heißt: gleiche Zeile, zwei Spalten nach links.
R[1]C heißt: eine Zeile nach unten, gleiche Spalte.
R[-2]C heißt: zwei Zeilen nach oben, gleiche Spalte. usw...
Die Variablen: ZdZmeF, ZdZmlF, SdZmF musst du noch an die Lage der Daten auf deinem Blatt anpassen.
Bitte gib eine Rückmeldung, ob es klappt.
Viele Grüße,
Jörg
|