"코드 실행이 중지되었습니다"라는 메시지와 함께 Excel VBA 앱이 자연스럽게 중지됨


151

웹에서 볼 수 있듯이 이것은 상당히 일반적인 불만이지만 답변이 더 드문 것 같습니다. 문제는 이것입니다 :

많은 사용자 컴퓨터에서 완벽하게 작동하는 여러 Excel VBA 앱이 있습니다. 그러나 한 시스템에서 특정 코드 줄에서 중지합니다. 항상 같은 줄이지 만 그 줄은 서로 공통점이 없습니다.

중단 후 F5 (실행)를 누르면 앱이 계속 진행되므로 중단 점이 추가 된 것과 거의 같습니다. 메뉴에서 '모든 나누기 제거'를 선택하고 나누기를 추가하고 다시 제거하려고 시도했습니다.

우리는 이전에 단일 앱 에서이 문제를 겪었으며 모듈에서 코드를 잘라 내고 컴파일 한 다음 다시 붙여 넣는 방식으로 '보통'했습니다.

문제는 이제 단일 .xls가 아닌 Excel 자체와 관련된 것으로 보이므로이를 관리하는 방법이 약간 확실하지 않습니다.

모든 도움을 주셔서 감사합니다 :)

감사,

필립 휘팅 턴


2
처리 중에 사용자가 이스케이프를 눌렀습니까? 아니면 이스케이프 키를 보내는 다른 앱이 있습니까?
shahkalpesh

1
모든 중단 점 제거를 선택한 후 VBA 프로젝트를 다시 컴파일하고 저장 했습니까? 이전에 제거 된 중단 점이 여전히 중단을 일으키는 Word VBA에서 관련 문제를 확인했습니다.
Dirk Vollmar

실행 중에는 아무것도 처리되지 않습니다, shahkalpesh. 디보-고마워, 나는 그 순서대로 정확하게 시도하지 않았을 수도 있습니다. 지금 그렇게
하시겠습니까

divo의 주석 외에도 관련 행과 디버그를 중지시킬 행을 주석 처리하면 주석 처리를 해제하고 코드를 다시 컴파일 할 수 있습니다.
Fionnuala

실제로 재 구축을 트리거하려면 일반적으로 라인을 수정 한 다음 커서를 다음 라인으로 이동하여 소스 코드를 수정 된 것으로 플래그 지정하십시오 (예 : 변경, 커서 아래로 이동, 이동). 커서를 올리고 수동으로 변경을 취소하십시오)
Dirk Vollmar

답변:


404

두 번째 해결책을 찾았습니다.

  1. 팝업에서 "디버그"버튼을 누르십시오.
  2. Ctrl+를 Pause|Break두 번 누릅니다 .
  3. 계속하려면 재생 버튼을 누르십시오.
  4. 완료 후 파일을 저장하십시오.

이것이 누군가를 돕기를 바랍니다.


12
+1 :와,이 포스트는 나를 고통의 세계에서 구해 냈습니다. 기괴한 문제에 대한 매우 예기치 않은 해결책. [Ctrl + Break]를 두 번 누르고 계속 한 후에 파일을 저장했습니다. 그 후에 파일을 닫았다가 다시 열 때 문제가 더 이상 나타나지 않았습니다.
dbenham

28
답이 공감 될 가치가 있다면, 이것이 바로 그것입니다. 좋은 대답입니다.
The_Barman

4
이것은 나에게 많은 도움이되었습니다. 이 답변에는 1000 개의 공감대가 필요했습니다. 나는 지난 4-5 일 동안이 문제에 시달렸다. 이것은 완벽하게 작동했습니다.
demouser123

25
왜 이것이 작동하는지 알고 있습니까? 아니면 어디에서 왔습니까? 이거 마법이야?
ZX9

4
2017 년에도 여전히 저를 도와주세요. 감사합니다!
Slab

16

이 문제는 Office / Windows의 이상한 문제에서 비롯됩니다.

동일한 VBA 코드를 개발하고 지난 며칠 동안 수백 번 (문자 그대로) 실행 한 후 지금이 문제가 발생했습니다. 유일한 차이점은이 난처한 문제가 발생하기 직전에 정통 방법으로 VBA 코드 실행을 실수로 종료했다는 것입니다.

나는 모든 임시 파일을 정리하고 재부팅 등을 수행했습니다 ...이 모든 후에 코드를 다시 실행했을 때 여전히 문제가 발생했습니다. 첫 번째 루프에 들어가기 전에. 는 것을 의미한다 "를 눌러"디버그 "팝업에서 버튼을 누른 두 번 [CTRL + 브레이크]를 누르고,이 후 정지하지 않고 계속 할 수 있습니다" 오피스 / 윈도우의 조합에 뭔가가 실행을 발표하지 않았기 때문에. 붙어 있습니다.

중복 Ctrl + Break 조치는 느린 실행을 해결합니다.


14

한 가지 해결책은 다음과 같습니다.

이 문제에 대한 해결책은 매크로의 첫 줄에“Application.EnableCancelKey = xlDisabled”코드 줄을 추가하는 것입니다. 이렇게하면 문제가 해결되고“Code”오류 메시지가 나타나지 않고 매크로를 성공적으로 실행할 수 있습니다. 실행이 중단되었습니다”.

그러나이 코드 줄을 삽입 한 후에는 더 이상 Ctrl + Break를 사용할 수 없었습니다. 따라서 작동하지만 크게 작동하지는 않습니다.


고마워, 스탠-그것은 당신이 시간 압력을 받고 그것을 실행하기를 원한다면 확실히 솔루션입니다! 굉장히 유용하다.
Phil Whittington

1
로 설정하여 동일한 실행에서 다시 활성화 할 수 있습니다 xlInterrupt. (코드 실행이 완료되면 자동으로 다시 활성화됩니다.) 다른 대답은 저에게 효과적이지만 최악의 경우 임시 수정으로 사용할 수 있습니다. Application.EnableCancelKey에 대한 자세한 내용
Kodithic

2
정답과 유일한 정답은 위에 있습니다. 삽입 어떤 을 포함, 코드의 라인을 "Application.EnableCancelKey = xlDisabled"단지 다른 라인에 문제를 이동합니다. 종종 새로운 '브레이크 포인트'는 정확하게 삽입 한 줄입니다. 내가 당신의 대답을 무시하지 않는 유일한 이유는 지난 10 년 동안 그것을 반복적으로 사용하는 것입니다.
Nigel Heffernan

6

매크로가 실행되지 않는 동안 Ctrl + Break를 누르면 문제가 해결되었습니다.


3

일반적인 치료 방법을 시도해보십시오.-VBA 코드에서 Rob Bovey의 VBA 코드 클리너 실행-사용자 PC의 모든 추가 기능, 특히 COM 및 .NET 추가 기능 제거-모든 사용자 .EXD 파일 삭제 (MSoft 업데이트 비 호환성)-Excel 실행 사용자 시스템 감지 및 복구-사용자의 .xlb 파일 크기를 확인합니다 (20-30K 여야 함)-재부팅 후 모든 사용자 임시 파일 삭제


2

의견을 보내 주신 모든 분들께 감사드립니다. 이 문제는 제어판에서 REPAIR를 선택하여 해결되었습니다. 이것은 Office의 기본 COM 구성 요소 중 일부를 명시 적으로 다시 등록하고 REINSTALL이 수행하지 않는 작업을 수행합니다. 나는 후자가 체크리스트를 거치고 때로는 이미 설치되어 있다면 거기에있는 것을 받아 들일 것으로 기대합니다. 그런 다음 Microsoft가 아닌 내 오류라고 생각하지만 사용자 컴퓨터에 COM interop에 대한 내 자신의 .NET dll을 등록하는 데 별도의 문제가 발생했습니다 (다른 컴퓨터에서도 작동하지만). 다시 한 번 감사드립니다. 정말 감사합니다.


2

하나의 복잡한 Excel VBA 앱을 개발하는 동안이 문제가 몇 번 발생했습니다. 때로는 Excel이 VBA 개체를 무작위로 끊기 시작했습니다. 유일한 해결책은 컴퓨터를 재부팅하는 것입니다. 다시 부팅 한 후 Excel은 일반적으로 정상적으로 작동하기 시작했습니다.

곧이 문제에 대한 가능한 해결책은 매크로가 실행 중이 지 않을 때 CTRL + Break를 한 번 누르는 것입니다. 어쩌면 이것이 당신에게도 도움이 될 수 있습니다.


2

매크로가 실행되지 않고 오른쪽 모서리에있는 빨간색 X의 통합 문서를 닫으려고하면 "코드 실행이 중단되었습니다"라는 foobar.xlsm (매크로 사용) 통합 문서와 함께 Excel 2007을 사용하는 경우 에도이 문제가 발생했습니다. 모두 또는 "초기화"양식, 통합 문서 또는 통합 문서 매크로 중 하나입니다. 내가 얻은 옵션은 "종료"또는 "계속"이며 디버그는 항상 회색으로 표시됩니다. 이전 포스터에서 제어판-> 프로그램 및 기능-> "Microsoft Office Proffesional 2007"(내 경우)-> 변경-> 복구를 마우스 오른쪽 버튼으로 클릭하십시오.

이것은 나를 위해 문제를 해결했습니다. MS 업데이트 직후에이 문제를 추가 할 수도 있고, 자발적으로 설치하지 않은 Microsoft의 "Team Foundation"이라는 Excel에서 추가 기능을 찾았습니다.


1

다음과 같은 이유로 Stan의 답변 # 2 에 자세한 내용을 추가하고 싶습니다 .

  • 나는이 문제에 수십 번 이상 직면했으며 프로젝트 조건에 따라 스탠의 부두 마법 답변 # 1 또는 # 2 중에서 선택했습니다. 다시 계속 직면했을 때, 왜 그것이 처음부터 일어나는지 더 궁금해졌습니다.

  • Mac 사용자를위한 답변도 추가하고 싶습니다.

  • 이 두 가지 가능한 답변에는 제한이 있습니다.

    • 코드가 보호되어 있고 암호를 모르면 # 1 답변 이 도움이되지 않습니다.
    • 코드가 보호되지 않은 경우 # 2응답 하면 코드를 디버깅 할 수 없습니다.

  1. 다음과 같은 이유로 발생할 수 있습니다.

    • 운영 체제가 Excel 프로세스에 시스템 리소스를 할당하지 않습니다. ( 솔루션 : 운영 체제를 시작해야합니다. 성공률은 매우 낮지 만 여러 번 작동하는 것으로 알려져 있습니다)

    • P 코드는 Visual Basic (.NET 이전)에서 사용 된 중간 코드이므로 VBA에서 계속 사용됩니다. 실행 속도가 느려져보다 컴팩트 한 실행 파일이 가능해졌습니다. 왜 p- 코드에 대해 이야기하고 있습니까? 때때로 여러 실행과 큰 파일 사이에서 손상되거나 소프트웨어 (Excel) 설치로 인해 어딘가 손상되었습니다. p 코드가 손상된 경우 코드 실행이 계속 중단됩니다. 해결책: 이러한 경우 코드가 손상되기 시작했으며 앞으로 Excel 통합 문서가 손상되어 "excel 파일이 손상되어 열 수 없음"과 같은 메시지가 표시 될 수 있습니다. 따라서 빠른 솔루션으로 요구 사항에 따라 답변 # 1 또는 답변 # 2에 의존 할 수 있습니다. 그러나 부패의 징후를 무시하지 마십시오. 메모장에서 코드 모듈을 복사하고, 모듈을 삭제하고, 통합 문서를 저장하고 닫고, Excel을 닫는 것이 좋습니다. 이제 통합 문서를 다시 열고 코드를 메모장에 복사하여 새 모듈을 만듭니다.

  2. Mac 사용자는 아래 옵션 중 하나를 시도하고 시스템 아키텍처, 즉 OS 및 Office 버전에 따라 확실히 작동합니다.

    • Ctrl + Pause
    • Ctrl + ScrLk
    • Esc+ Esc(연속 두 번 누름)

매크로가 현재 작업을 즉시 완료하여 실행을 일시 중단하므로 위의 키 조합을 사용하여 중단 모드로 전환됩니다. 2 단계를 대체합니다.

  1. 해결 방법 : 사용의 제한을 극복하기 위해 응답 # 1# 2 대답 , 내가 사용 xlErrorHandler과 함께 Resume오류 코드 (18)는 그 후, 인터럽트가 오류로 오류, 트랩으로 실행 절차로 전송되는 경우 오류 처리기에서 문 처리기는 On Error GoTo 문으로 설정됩니다. 트랩 가능한 오류 코드는 18입니다. 현재 프로 시저가 인터럽트되었으며 사용자가 프로 시저를 디버그하거나 종료 할 수 있습니다. Microsoft 는 오류 처리기에 이력서가 있으면 오류 처리기가 항상 같은 명령문으로 돌아 오는 경우이를 사용하지 않도록주의합니다. 그것은 우리가 원치 않는 의미의 코드 실행 중단을 원한다는 것입니다.


0

나의 현재 평판으로는 아직 이것을 코멘트로 게시 할 수 없습니다. Stans 솔루션은 디버그 모드로 들어가고 Ctrl + Break를 두 번 누르고, 재생하고, 저장하면 내 문제가 해결되었지만 예기치 않은 두 가지 비틀기가 있습니다.

  1. 내 프로젝트 구조는 암호로 보호되어 있으므로 디버그 모드로 들어가려면 먼저 개발자 모드로 들어가서 프로젝트 구조를 클릭하고 암호를 입력해야했습니다.

  2. 내 프로젝트는 템플릿 파일 (.xmtl)입니다. 이전 파일 이름 끝에 "1"이있는 .xml로 열리는 두 번 클릭으로 파일을 열었습니다. Stans 지침에 따라 버그를 수정하고 ... 1.xml 파일로 저장했습니다. 그런 다음 이번에는 템플릿으로 템플릿을 다시 열고 해당 파일에 동일한 버그 수정을 적용하려고했는데 버그가 사라졌습니다! 나는이 파일을 변경하지 않았으며 여전히 매크로 실행시 버그가 없습니다. 이것은 버그가 실제로 파일에있는 것이 아니라 Excel의 (숨겨진) 설정에 있다는 것을 의미합니다.


-1

문제는 이제 Excel 자체와 관련된 것으로 보입니다.

다시 설치하고 패치하십시오 :) 그 외에는 말하기가 어렵습니다.


지원 담당자가 자신의 작업을 수행 한 후 사용자가 재부팅하는 것을 잊었지만 다시 설치를 시도했습니다. Office를 다시 설치하지 않으려 고하지만이 문제는 피할 수 없습니다 ... 감사합니다
Phil Whittington
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.