에너지 관점 스터디:에관스

컴활 1급 · 컴활 1급 실전 판단

컴활 1급 SetWarnings False True 사용 순서: 컴활 1급 문제에서 바로 쓰는 구분 공식

두음 암기는 `끄실켜`입니다. 경고를 끄고 필요한 작업을 실행한 뒤 반드시 다시 켭니다.

DoCmd.SetWarnings False는 시스템 메시지 표시를 끄고, DoCmd.SetWarnings True는 다시 켭니다. SetWarnings 자체가 실행 쿼리를 수행하는 명령은 아닙니다.

검색자가 헷갈리는 False·True·실행 쿼리·오류 복구를 한 화면에서 비교하고, 정상 종료와 오류 종료 모두에서 True를 보장하는 판단 순서를 붙였습니다.

컴활 1급 SetWarnings False True의 시스템 메시지 끄기와 켜기, 실행 쿼리 역할, 오류 복구를 정리한 인포그래픽
끄실켜로 False는 시스템 메시지 끄기, True는 켜기, 정상·오류 종료 모두에서 True 복구를 확인합니다.
작성에관스 컴활 1급 학습팀 발행2026년 9월 18일 수정2026년 9월 18일 주제컴활 1급 실전 판단

핵심 포인트

이 글에서 먼저 챙길 것

  • WarningsOn=False인 DoCmd.SetWarnings False는 Access 시스템 메시지 표시를 끕니다.
  • WarningsOn=True인 DoCmd.SetWarnings True는 꺼 둔 시스템 메시지 표시를 다시 켭니다.
  • SetWarnings는 쿼리를 실행하지 않고, RunSQL·OpenQuery 같은 실제 작업과 함께 메시지 표시를 제어합니다.
  • 추가·수정·삭제 쿼리의 확인 메시지를 숨겼다면 정상 종료와 오류 처리 경로 모두에서 True로 복구해야 합니다.
  • SetWarnings는 DoCmd 개체의 메서드이며, 매크로에서는 SetWarnings 작업의 Warnings On Yes/No와 대응합니다.

본문

컴활 1급 공부 기준을 더 구체적으로 보기

이 글이 필요한 사람

기출을 풀 때 같은 유형에서 반복해서 틀린다면 이 글의 순서대로 다시 점검하면 됩니다.

컴활 1급 SetWarnings False True 사용 순서를 검색한 사람은 단순 정의보다 실제 문제에서 무엇을 먼저 확인할지가 필요합니다.

이 글은 False·True·실행 쿼리의 차이와 문제 풀이 순서만 다루며, 과목 전체 요약이나 시험 일정 정보까지 범위를 넓히지 않는다. 이미 발행된 글이 맡은 범위는 반복하지 않습니다.

두음 암기부터 시작하세요: 끄실켜

`끄실켜`는 '끄고, 실행하고, 켜기'의 앞말입니다. False로 시스템 메시지를 끄고 필요한 작업을 실행한 뒤 True로 복구합니다.

False와 True는 WarningsOn 인수의 값입니다. False는 표시 끄기, True는 표시 켜기이며, 실행 쿼리는 별도의 실제 작업입니다.

암기 문장을 말한 뒤 `DoCmd.SetWarnings False → 작업 → DoCmd.SetWarnings True`를 정상 종료와 오류 처리에 각각 적용할 수 있어야 합니다.

먼저 결론부터 확인합니다

가장 안전한 기본 흐름은 `DoCmd.SetWarnings False`로 시스템 메시지를 끄고, 실제 작업을 수행한 뒤 `DoCmd.SetWarnings True`로 복구하는 것입니다.

오류가 발생하면 정상 종료 줄을 건너뛸 수 있으므로 오류 처리 구간에도 True 복구를 두어야 합니다.

마지막에는 SetWarnings가 쿼리를 실행하는 명령이 아니라 DoCmd의 메시지 표시 전환 메서드라는 점을 대조하세요.

False

`DoCmd.SetWarnings False`에서 False는 WarningsOn=False를 뜻하며 Access 시스템 메시지 표시를 끕니다.

추가·수정·삭제 같은 작업 쿼리에서 확인 메시지가 나타나는 흐름을 제어할 때 함께 쓰일 수 있습니다.

다만 False가 모든 오류 메시지나 사용자의 입력을 요구하는 대화상자까지 없앤다고 해석하면 안 됩니다.

True

`DoCmd.SetWarnings True`에서 True는 WarningsOn=True를 뜻하며 꺼 둔 시스템 메시지 표시를 다시 켭니다.

정상 종료 직전뿐 아니라 오류 처리 구간에도 True를 호출해야 작업 중단 뒤 Access가 조용한 상태로 남지 않습니다.

Microsoft 문서도 Visual Basic에서 시스템 메시지를 끈 뒤 다시 켜지 않으면 중단이나 중단점 이후에도 꺼진 상태가 유지될 수 있다고 설명합니다.

실행 쿼리

SetWarnings는 쿼리를 실행하지 않습니다. 실제 쿼리 수행은 `DoCmd.RunSQL`이나 `DoCmd.OpenQuery` 같은 별도 명령이 맡습니다.

SetWarnings는 그 작업 전후에 표시되는 시스템 메시지와 확인 흐름을 제어하는 보조 메서드입니다.

따라서 'SetWarnings가 추가·수정·삭제 쿼리를 실행한다'는 선지는 기능 주체를 뒤집은 오답입니다.

오류 처리

정상 종료 줄 뒤에만 True를 두면 작업 중간 오류가 발생했을 때 복구 줄에 도달하지 못할 수 있습니다.

`On Error GoTo`로 오류 처리 구간을 만들고, 정상 종료와 오류 처리 모두가 공통 복구 지점을 지나도록 구성합니다.

오류 처리의 핵심은 오류를 숨기는 것이 아니라, 필요한 오류 안내를 처리한 뒤 시스템 메시지 표시를 True로 되돌리는 것입니다.

안전한 VBA 흐름 예시

다음 구조는 정상 종료와 오류 종료가 같은 복구 지점을 지나게 합니다.

`On Error GoTo ErrHandler`를 먼저 두고, `DoCmd.SetWarnings False` 뒤에 실제 작업 명령을 배치합니다.

정상 경로의 `ExitPoint:`에서 `DoCmd.SetWarnings True`를 호출한 뒤 `Exit Sub`로 빠집니다.

`ErrHandler:`에서는 필요한 오류 안내를 처리하고 `Resume ExitPoint`로 공통 복구 지점에 보냅니다.

시험에서는 SQL 문장 자체보다 False와 True의 위치, 오류 뒤에도 True가 실행되는 흐름을 먼저 확인합니다.

DoCmd

VBA에서는 `DoCmd.SetWarnings WarningsOn` 형식으로 호출하며, `WarningsOn`에는 True 또는 False를 넣습니다.

매크로에서는 SetWarnings 작업의 `Warnings On` 인수를 Yes/No로 설정하며, VBA의 True/False와 같은 방향으로 대응합니다.

문제에서 `Application.SetWarnings`나 쿼리 이름을 호출 주체로 제시하면 공식 메서드 주체인 `DoCmd`와 비교합니다.

자주 틀리는 함정 네 가지

1. False를 경고 표시로 뒤집어 외우지 않는다.

2. SetWarnings를 실행 쿼리 자체를 수행하는 명령으로 오해하지 않는다.

3. 정상 종료 경로만 True로 복구하면 오류 때 시스템 메시지가 꺼진 채 남을 수 있다.

4. SetWarnings False가 모든 오류 메시지와 입력 대화상자를 없애는 기능이라고 보지 않는다.

문제에서 적용하는 순서

1단계. `SetWarnings`의 호출 주체가 `DoCmd`인지 확인합니다.

2단계. False는 시스템 메시지 끄기, True는 시스템 메시지 켜기로 방향을 고정합니다.

3단계. 실제 작업이 RunSQL·OpenQuery 등 별도 명령인지 확인하고 SetWarnings와 역할을 분리합니다.

4단계. 정상 종료와 오류 처리 양쪽에 True 복구 경로가 있는지 찾습니다.

5단계. MsgBox·오류 메시지·입력 대화상자까지 모두 사라진다는 과장된 선지를 제거합니다.

시험 직전에는 다섯 줄만 봅니다

1. False: WarningsOn=False, 시스템 메시지 표시 끄기.

2. True: WarningsOn=True, 시스템 메시지 표시 켜기.

3. 역할: SetWarnings는 쿼리 실행이 아니라 메시지 표시 전환.

4. 복구: 정상 종료와 오류 처리 모두에서 True 호출.

5. 주체: VBA 호출은 `DoCmd.SetWarnings`, 매크로는 SetWarnings 작업.

30초 셀프 체크

1. 질문: False는 무엇을 하나요? 정답: WarningsOn=False로 Access 시스템 메시지 표시를 끕니다.

2. 질문: True는 언제 필요한가요? 정답: 꺼 둔 시스템 메시지 표시를 다시 켜며 정상 종료와 오류 처리 모두에서 확인합니다.

3. 질문: SetWarnings가 쿼리를 실행하나요? 정답: 아니요. 실제 실행은 RunSQL·OpenQuery 같은 별도 명령이 맡습니다.

4. 질문: False가 모든 대화상자를 없애나요? 정답: 아니요. 오류 메시지와 입력이 필요한 대화상자까지 전부 숨기는 기능으로 보면 안 됩니다.

5. 질문: VBA에서 호출 주체는 무엇인가요? 정답: `DoCmd.SetWarnings True/False` 형식의 DoCmd 메서드입니다.

근거 자료와 발행 전 재확인

이 글은 Microsoft Learn의 DoCmd.SetWarnings 메서드, SetWarnings 매크로 작업, DoCmd 개체와 런타임 오류 처리 문서를 대조해 작성했습니다.

공식 문서의 핵심은 True가 시스템 메시지 표시 켜기, False가 끄기이며, Visual Basic에서 껐다면 다시 켜야 한다는 점입니다.

실제 발행일에는 링크 접근 여부와 문서 표현 변경을 다시 확인하고, 확인되지 않은 컴활 출제 수치나 제도는 공개하지 않습니다.

FAQ

자주 묻는 질문

컴활 1급 SetWarnings False True 사용 순서, 핵심만 말하면 무엇인가요?

SetWarnings False는 Access 시스템 메시지 표시를 끄고 True는 다시 켭니다. SetWarnings 자체는 쿼리를 실행하지 않으므로 실제 작업 명령과 분리해 보고, 정상 종료와 오류 처리 모두에서 True 복구를 확인해야 합니다.

False와 True는 어떻게 구분하나요?

False는 WarningsOn=False로 시스템 메시지 표시를 끄고, True는 WarningsOn=True로 다시 켭니다. `DoCmd.SetWarnings False`와 `DoCmd.SetWarnings True`를 한 쌍으로 놓으면 방향을 헷갈리지 않습니다.

문제를 풀 때 가장 먼저 볼 단서는 무엇인가요?

먼저 호출 주체가 DoCmd인지와 True/False 방향을 확인하고, 그다음 실제 작업 명령과 오류 복구 경로를 봅니다. SetWarnings가 쿼리 실행을 담당한다고 설명하는 선지는 제거하면 됩니다.

시험 직전에는 어떻게 복습하는 것이 좋나요?

끄실켜를 먼저 말한 뒤 `DoCmd.SetWarnings False → 실제 작업 → DoCmd.SetWarnings True`를 정상 종료와 오류 처리에 각각 대입하세요. 틀린 항목만 두 번 더 회상하면 전체 설명을 다시 읽는 것보다 효율적입니다.