Tôi biết bạn có thể dừng macro VBA đang chạy theo cách thủ công với Ctrl + Break, nhưng có cách nào để mã dừng tự động nếu đáp ứng một điều kiện nhất định không? exit function
/exit sub
không hoạt động, vì chúng chỉ kết thúc phương thức mà chúng được gọi bên trong.Làm cách nào để tự động dừng macro VBA?
Ví dụ,
sub a
call b
msgbox "a complete"
end sub
sub b
call c
msgbox "b complete" 'this msgbox will still show after the `exit sub` in 'c'
end sub
sub c
msgbox "entering c"
exit sub 'this will only `exit sub` 'c', but not 'a' or 'b'
msgbox "exiting c"
end sub
'OUTPUT:
'entering c
'b complete
'a complete
Tôi cho rằng tôi có thể biến những sub
's vào function
' s và sử dụng mã trở lại biết nếu phương pháp này thực hiện thành công, nhưng là có một cách đơn giản hơn để làm điều này?
Cũng giống như một mẹo chung, 'goto' là xấu. Không sử dụng nó. –
http://stackoverflow.com/q/46586/436282 –