|
▼トキノハジメ さん:
ループで数式入れてくのならできますけど?
最初のほうは、1セルずつ式を書き出してみると
' [A9].FormulaR1C1 = "=SUM(R2C:R[-2]C)"
' [B9].FormulaR1C1 = "=SUM(R3C:R[-2]C)"
' [C9].FormulaR1C1 = "=SUM(R4C:R[-2]C)"
' [D9].FormulaR1C1 = "=SUM(R5C:R[-2]C)"
' [E9].FormulaR1C1 = "=SUM(R6C:R[-2]C)"
' [F9].FormulaR1C1 = "=SUM(R7C:R[-2]C)"
だから、
ループで書き出すのなら、
Sub Try1()
Dim i&
For i = 1 To 6
Cells(9, i).FormulaR1C1 = "=SUM(R" & (i + 1) & "C:R[-2]C"
Next
End Sub
いっぽう
>(I1:O1).Formura=(80/B1)
>(I2:N2).Formura=(80/C2)
>(I3:L3).Formura=(80/D3)
>・・・
>・・・
>G6まで
のほうは、(7セルでなく 6セルだと思う)
' [I1:N1].FormulaR1C1 = "=80/RC[-7]"
' [I2:M2].FormulaR1C1 = "=80/RC[-6]"
だから
Sub Try2()
Dim i&
For i = 1 To 6
Cells(i, "I").Resize(, 7 - i).FormulaR1C1 = "=80/RC[-" & 8 - i & "]"
Next
End Sub
数式に強い人なら、R1C1式の中に関数式を入れ子にして一行で書けるのかも
知れないけれど?
|
|