2016-07-21 7 views
0

조직을 떠난 다른 사람 매크로를 인수했습니다. 런타임 오류가있는 제목에 나열된대로 다음과 같은 오류가 발생합니다.VBA 런타임 오류 91. 개체 설정 변수 디버그 문제가 발생했습니다.

다음은 디버깅을 지시하는 코드입니다. 문제는 이것이 VBA 매크로의 첫 번째 시간이며 오류를 해결하기 시작하는 위치가 확실하지 않습니다.

이 지점을 지나갈 수 없으므로 도움이 될 것입니다.

Cells.Find(What:="Top 10 Rank", After:=ActiveCell, LookIn:=xlValues, _ 
     LookAt:=xlPart, SearchOrder:=xlByRows, _ 
     SearchDirection:= xlNext, MatchCase:=False, _ 
     SearchFormat:=False).Activate 
+0

가능한 복제 [엑셀 VBA가 행동으로 Range.Find] (http://stackoverflow.com/questions/21403916/excel-vba-range-find-acting-up) –

답변

1

값이 다음 오류가 발생합니다 검색 범위에있는, 그래서 별도의 운영에 코드를 분할하는 것이 좋습니다되지 않은 경우 : 그래서, 어떤 데이터를 찾을 수 없습니다

Dim f As Range 
Set f = Cells.Find(What:="Top 10 Rank", After:=ActiveCell, LookIn:=xlValues, _ 
        LookAt:=xlPart, SearchOrder:=xlByRows, _ 
        SearchDirection:= xlNext, MatchCase:=False, _ 
        SearchFormat:=False) 

If Not f Is nothing Then 
    'do somthing with f 
Else 
    Msgbox "not found!" 
End If 
+0

이 도움을 주셔서 감사합니다. –

+0

@MarkMeiring에 스택 오버플로 (및 스택 교환 일반적으로) 최고의 "감사합니다"는 체크 표시입니다. 위/아래 투표 버튼 아래에 녹색 체크 표시 아이콘이 보이십니까? 그것에게 약간의 사랑을 줘라, 당신은 그것을 위해 +2를 얻을 것이고 세상에 "이걸 보자!이 바로 여기, 보라! 이것이 대답이다!" –

1

.Find 에 설명 된대로 null 객체 참조 (VBA에서 Nothing를) 반환이 Microsoft Support page :

은 Visual Basic 찾기 방법은 NULL 값을 반환하기 때문에

이 매크로 오류가 발생합니다 세포 활성화를 불가능하게 만든다. 의

관련 문제