Cześć,
mam następujący problem dotyczący VBA i On error. Mianowicie mam kod makra, który łączy się z sap wykonuje jakieś czynności i gdy natyka error ma się przenieść do odpowiedniego miejsca w kodzie przez on error goto XXX. Problem polega na tym, że o ile 1 błąd jest przechwytywany i przenosi się do miejsca np. XXX o tyle następne on error już nie przechwytują błędu tylko wyrzucają debuga.
Próbowałem resetować on error przez Err.Clear oraz On Error GoTo 0 ale to się nie sprawdza. Co ciekawe jeśli pominąć by 1 on error i zacząć kod od tego 2 to wtedy nie wyrzuca debuga i działa poprawnie przy 2 błędzie ale w kolejnych występuje ten sam problem i znowu pojawia się błąd.
Wklejam kawałek kodu poniżej. Może ktoś byłby wstanie zdiagnozować gdzie leży problem.
On Error GoTo NoInfoHeader
info_header = session.findById("wnd[1]/usr/txtMESSTXT1").caretPosition
If info_header = "" Then GoTo NoInfoHeader
session.findById("wnd[1]/tbar[0]/btn[0]").press
NoInfoHeader:
Err.Clear
On Error GoTo 0
On Error GoTo NoInfoCheck
session.findById("wnd[0]/usr/subSUB0:SAPLMEDCMV:0100/cntlDCMGRIDCONTROL1/shellcont/shell").pressToolbarButton "&MEDCMCOMPLETE"