source

Excel VBA에서 공용 변수 값 확인 - 로컬 창 대안

ittop 2023. 8. 30. 22:04
반응형

Excel VBA에서 공용 변수 값 확인 - 로컬 창 대안

절차 수준 변수에 대한 할당을 확인하기 위해 로컬 창을 사용하고 있습니다.

저는 최근에 프로젝트마다 변경되지 않는 시트의 특정 입력을 읽는 공개 수준 변수 집합을 만들기 위해 코드를 업데이트했습니다.

이러한 변수를 확인하려고 하면 로컬에서 정의된 변수가 아니기 때문에 로컬 창에 해당 변수가 표시되지 않습니다.

공용 변수에 대한 로컬 창에 대한 대안이 있습니까?그렇지 않다면 공개 변수 할당을 어떻게 확인해야 합니까?

즉시 창(다른 답변에 설명되어 있음) 외에도 감시 창은 이러한 상황에서 매우 유용합니다.View(보기) 메뉴에서 활성화할 수 있습니다. -> Watch(보기)를 활성화할 수 있습니다.enter image description here

여기서 다음을 정의할 수 있습니다.

  • 모든 변수(예: 공개 변수)
  • 완전한 학기, 예를 들어.ActiveWorkbook.UsedRange.Address
  • 각 시계의 범위
  • 값이 변경되거나 결과적으로 발생하는 중단점도True은 추가할 수 디버깅할 때 를 이은추코중조허빠건단않때르부다용으로 . 예를 들어 시계를 다음으로 설정하는 경우myVar=0그리고 Break When Value가 True일 때 코드는 잠재적인 버그가 "시작"되는 순간 자동으로 중지됩니다.

코드 모듈의 변수(또는 다른 코드)를 마우스 오른쪽 버튼으로 클릭하거나 시계 창을 마우스 오른쪽 버튼으로 클릭하여 "시계 추가" 대화 상자에 이러한 모든 옵션을 추가할 수 있습니다.

enter image description here

또한 목록에서 시계 항목을 두 번 클릭하여 편집하기만 하면 됩니다.

디버깅에 매우 편리한 도구로, 특히 로컬 및 즉시 창과 함께 사용할 수 있습니다.

즉시 창을 사용합니다.코딩 환경에서 Ctrl + G를 눌러 즉시 창으로 이동합니다.디버깅 모드에 있을 때 변수 값을 가져오고 설정할 수 있습니다.변수 값을 확인하려면 접두사 ?를 붙여야 합니다.

 ?variableName   press enter to get the value
 variableName ="test" press enter to set the value

매크로 알고리즘을 실행하는 모듈로 "공용 정의" 집합을 이동하면 로컬 창에 해당 정의가 표시됩니다.

저는 모든 "공개 정의"를 한 장(다른 것은 아무것도 없음)에 정리했는데, 로컬 창에 나열된 변수를 찾을 수 없고 로컬 창에서 모듈에 액세스할 수 없다는 문제를 금방 발견했습니다.

그래서 나는 그것들을 나의 커스텀 프로시저 호출에 사용하는 모듈 시트로 옮겼습니다.

그렇긴 하지만, 혼동을 방지하기 위해서는 항상 특정한 것/변수/대상을 "dim"으로 정의하는 것이 좋은 방법일 수도 있지만, 저는 아직 이것이 문제가 되지 않았기 때문에 오히려 대중을 이용합니다. - 이것이 "무모하다"고 생각되면 경고를 좀 해주세요, 하하.

언급URL : https://stackoverflow.com/questions/15031323/checking-the-values-of-public-variables-in-excel-vba-locals-window-alternative

반응형