VBA로 매크로 작업을 하다보니 특정 위치들에서 오류가 발생
오류 발생 시 오류에 대한 기록을 남기고 다음 작업으로 넘어가서
반복 작업을 진행하려고 'On Error GoTo 레이블'을 사용 함
첫 번째 오류 발생 시에는 정상적으로 작동이 되지만,
두 번째 부터는 오류가 발생하더라도 런타임 오류 창이 계속 생성됨.
On Error 문법 관련해서 구글링도 해보고,
챗 gpt를 통해 알아보고 작업을 해봤지만 어떻게 해도 동일한 현상 발생
'On Error GoTo 0'도 뭔지 제대로 몰라서 하다가
-1이란게 있었음. 에러를 초기화 시킨다네?
혹시나 싶어 오류처리 작업을 다 하고 초기화를 시키고
기존 필수 작업 레이블로 이동 시키니 더 이상 런타임 오류 발생하지 않음
초기화 관련해서는 특별히 어디서 언급한 내용이 없어서 몰랐는데,
반복적으로 작업이 이뤄질 때 초기화가 반드시 필요해 보임
안되면 에러 코드를 갖고 비교해가면서 라인 작업들을 할려고 했는데,
무식하게 안해도 되어 다행.
Sub test()
'오류 발생 시 핸들러로 점프
On Error GoTo ErrorHandler
For i = 1 To 10
'각종 코드 실행
'오류 처리 후 복귀해서 시작 할 라인
Repoint:
Next i
'정상적으로 작업이 완료 될 경우 종료
Exit Sub
'오류 발생 시 처리 할 레이블
ErrorHandler:
'오류 처리 코드 실행
'오류 처리 초기화
On Error GoTo -1
'오류 처리 후 기존 작업으로 복귀
GoTo Repoint
End Sub
'VBA & 셀레니움 이야기' 카테고리의 다른 글
엑셀 VBA Selenium(셀레니움)에서 특정 Element의 존재 여부 확인하기 (Feat. IsElementPresent 매서드 활용 및 응용하기) (1) | 2024.04.25 |
---|---|
vba selenium 팝업 창 제어하기 (0) | 2023.08.25 |
VBA 셀레니움으로 캡챠코드 (자동 등록 방지 코드) 자동입력 하기 꿀팁 (4) | 2023.08.16 |
VBA와 Selenium (0) | 2023.07.03 |