2016-07-02 1 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