次のコード行があります。
ActiveCell.FormulaR1C1 = "=sqrt(RC[-1])"
-1 の代わりに、次のように x などの変数を使用します。
ActiveCell.FormulaR1C1 = "=sqrt(RC[x])"
これはエラーを返します。これを行う方法はありますか?
このような:
ActiveCell.FormulaR1C1 = "=sqrt(RC[" & x & "])"
ほとんどの場合、ここでループする必要はありません。このようなことができることを知っていますか?
Range("A1:A10").Formula = "=SQRT(B1)"
Excel は行ごとに ref を増やします。
この質問を拡張します: 私がやりたいことは自明です:
Dim max1, sig1 As Integer
max1 = Range("B5")
sig1 = Range("I5")
Range("B9").Select
ActiveCell.FormulaR1C1 = "=INDEX(LINEST((R1C[" & sig1 & "]:R1C[" & max1 & "]),),1)"
これを次のように解釈するため、最後の行で失敗します: INDEX(LINEST((R4C:R4C),),1) これらのセルを次のように配置する場所を指定すると、正常に動作します:
ActiveCell.FormulaR1C1 = "=INDEX(LINEST((R1C2:R1C1793),),1)"
max1 = 1793、sig1 = 1009、Row 1 に 4096 個の整数が含まれていることを確認しました。