그래서 나는 꽤 큰 Excel 시트를 사용하고 있습니다. 상당히 복잡한 기능을 많이 만들었습니다. 나는 그것이 Execute라고 말할 때 꽤 오랜 시간이 걸린다. 이제Excel VBA에서 루프 일시 중지/다시 시작
: 나는 그것이 온 과정에 운임 방법을 알려주는 타이머 (사진에 그림을) 만들었습니다. 나는 일시 정지 버튼을 만들고 싶습니다. 나는 다음과 같이 시도했다 :
Private Sub PauseButton_Click()
Application.Wait Now() + TimeValue("00:00:20")
End Sub
실제로 프로세스를 일시 중지한다. 나의 초기 생각은 매우 큰 숫자를 입력 한 다음 버튼 클릭을 재개하는 것이었다. 불행히도 (S) 과정을 Excel에서 시작할 수 없으므로 입력 한 기간 동안 프로그램이 완전히 고정 된 것으로 보입니다.
이 문제를 해결하는 방법에 대한 아이디어가 있으면 크게 개선 될 것입니다.
"일시 중지"는 생각할 수있는 것처럼 쉬운 일이 아닙니다. 첫 번째 :'Application.Wait'은 항상 당신이 알아 차렸 듯이 애플리케이션을 정지시킬 것입니다. 원하는대로 수행하려면 하위를 건너 뛰거나 끝내고 다시 시작할 때 다시 시작해야합니다. 프로세스를 "재개"(단순히 시작 부분부터 시작하지 않음) 할 위치를 알려주는 하나 이상의 (전역/정적) 변수가 있으면 일시 중지의 "느낌"이 나타납니다. 하지만 코드의 큰 부분을 변경해야합니다. DoEvents 루프를 사용하여 일시 중지를 시뮬레이트 할 수는 있지만 시트가 0 % –