2010년 무한 루프 제어(2013년) Excel VBA
무한 루프를 생성하는 코드를 새 Excel로 작성하면 Ctrl + Break이 작동하지 않습니다.Esc 키 등도 마찬가지입니다.
제가 웹을 다 찾아봤는데 마이크로소프트가 버그를 가지고 있고 그것을 고치려고 하지 않는 것 같아요.
Ctrl+Break 기능을 VBA에 재도입하여 향후 이 문제가 발생해도 작업을 잃거나 강제 종료하지 않도록 할 수 있는 방법이 있습니까?
Alt + Esc.고장날 때까지 키를 누르세요.
Windows 7부터는 열려 있는 모든 창을 순환합니다.신경 쓰지 말고 계속 쥐어짜세요.
Office 2013에서는 적어도 Ctrl+Scroll Lock을 사용합니다.설정을 변경하거나 아무것도 활성화할 필요가 없었습니다.
(Blatant plug: 이 정보의 원본에 링크하는 블로그 게시물: )
이 매우 짜증나는 행동을 완화하는 한 가지 방법은 다음을 포함하는 것입니다.
DoEvents
루프 안에서.반복마다 실행할 필요는 없습니다.정기적으로 호출되는 한 Ctrl Break은 계속 작동합니다.
주의: 보통 퍼포먼스에 영향을 주지 않도록 코드가 디버깅된 후 이 코드를 삭제합니다.
이전에 제안한 솔루션을 사용해 보았지만 소용이 없는 경우 이 방법을 사용해 보십시오.효과가 있었다 (Windows 8, Excel 2016)
VBA 코드 창에서 Alt+ESC 키를 누른 상태에서 (그 창을 끌듯이) 왼쪽 버튼을 클릭합니다.실행을 중단하고 계속할지 아니면 디버깅할지...물론 debug를 선택했습니다.
매크로가 실행되지 않을 때 Ctrl+break 키를 누르면 개발자 외부에서 매크로를 실행하는 경우에만 작동합니다.
다른 방법으로 루프에 의도적으로 오류가 발생합니다.예를 들어 루프가 1000회 이상 실행되지 않아야 합니다.
Function XYZ()
do while(..)
errcnt = errcnt + 1
if errcnt > 1000 then
cells.find(what:="Chunk Norris").activate
exit function
endif
loop
end function
에러가 발생하고, 코드가 「브레이크」됩니다.
설계 모드인 경우 브레이크(Ctrl + Break)도 VBA 편집기에서 사용할 수 없습니다.이 경우 정사각형 중지 아이콘 오른쪽에 있는 Design Mode(설계 모드) 아이콘을 누를 수 있습니다.그러면 편집기가 일반 모드로 돌아가며 중단 옵션을 사용할 수 있습니다.
서투른 키보드에 브레이크 버튼이 없어요.유일한 대안은 X를 눌러 프로그램을 종료하거나 alt+F4를 누르는 것입니다.나도 코드를 하나 써야겠어.
answers.microsoft.com 에서 를 누르기만 하면 됩니다.ESC
Excel 에 excel excel excel excel excel excel excel excel excel excel excel excel excel excel excel excel excel 。2016년
언급URL : https://stackoverflow.com/questions/21737796/control-break-out-of-infinite-loop-in-2010-2013-excel-vba
'sourcetip' 카테고리의 다른 글
Excel 2007에서 줄 바꿈이 있는 CSV Import (0) | 2023.04.13 |
---|---|
NSInterger를 사용하는 경우와 int. (0) | 2023.04.13 |
범위에서의 셀 스타일 정렬 (0) | 2023.04.13 |
SQL Server에서 임시 테이블을 작성할 때 #를 사용해야 합니까? (0) | 2023.04.13 |
MS Excel - 구분 기호 포함 (0) | 2023.04.13 |