2011-03-12 3 views
20

그래서 간단한 작은 매크로/하위 명령 단추를 클릭 할 때 정의했습니다.간단한 vba 코드가 런타임 오류 91 개체 변수 또는 블록이 설정되지 않은 경우

Dim rng As Range 
rng = Sheet8.Range("A12") '<< ERROR here 
rng.Value2 = "1" 

난 그냥 셀 "A12"를 설정하려면 :

실행 시간 오류 '91': 개체 변수 또는 차단을하지 내 코드는

를 설정 문제는 나에게 준다 Sheet8.

enter image description here

감사합니다!

+0

확실하게 'Sheet8'이 있고 확실히'A12' 셀이 있습니다. 어쩌면 그것의 구문? 별도로 "A"와 "12"가되어야합니까? – gideon

답변

30
님의 객체로 설정 필요

:

Set rng = Sheet8.Range("A12") 

Sheet8 괜찮습니다.

Sheet1.[a1] 
+0

+1 감사합니다. 오류가 없지만 A12 셀 값을 설정하지 않았습니까? 'rng.Value' 또는'rng.Formula'가 작동하지 않아야합니까? – gideon

+0

권자! 지금 당장 OK'Set rng.Value2 = "1"'런타임 오류가 발생합니다. 424 – gideon

+0

@ giddy 나는 다시 나타납니다. Set 만 사용하여 개체에 변수를 설정합니다. 귀하가 게시 한 코드는 내 대답에 따라 Set이 추가되어 나와 잘 작동합니다. Sheet8이 존재합니까? Sheet3은 Sheet3으로 이름을 바꿀 수 있지만 여전히 Sheet3이라는 것을 잊지 마십시오. Sheet8 개체를 Sheet8 시트와 혼동하지 마십시오. – Fionnuala

관련 문제