2016-07-02 192 views
0

私は、Forループを使用して10個の値を平均して600個の値を平均して60個の値にする非常に単純なコードを作成しようとしています。VBA Excel FormulaR1C1 "アプリケーション定義またはオブジェクト定義エラー"?

このコードでは、R1C1の式のどこかに「アプリケーション定義またはオブジェクト定義エラー」というエラーが表示されています。その理由はわかりません。変数に何か関係があると想定しています。誰でもこれを行う方法を知っていますか?

Sub Averaging10() 

Dim X As Double 
Dim Y As Double 
Dim Z As Double 

X = 5 
Y = 5 
Z = 0 

For X = 5 To 65 

Z = Y + 9 

    Cells(5, X).Select 
    ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-3], Z : RC[-3], Z])" 

Y = Y + 10 

Next 

End Sub 
+0

私は今、最後に余分な角括弧を持っています。まだエラーを投げていますが、私はそれらを修正します。申し訳ありませんが、無視してください。 – AggroCrag

+1

R1C1とA1の構文を混在させようとしていますが、これはできません。あるいは、式に 'Z'の値を渡そうとしていますが、実際にはリテラル文字列" Z " –

+0

偶然にも幸運なことに、コミュニティは[最近緊急性を追加することについて議論しました](http://meta.stackoverflow.com/q/326569/472495) - 質問を読んでください。 – halfer

答えて

1

ブラケットが追加されました。これを試してみてください:

Dim X As Double 
Dim Y As Double 
Dim Z As Double 

X = 5 
Y = 5 
Z = 0 

For X = 5 To 65 
    Z = Y + 9 
    Cells(5, X).Select 
    ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-3], Z : RC[-3], Z)" 
    Y = Y + 10 
Next 
関連する問題