Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

기본적으로 레코드가 없는 보고서를 인쇄할 수 있습니다. 이 문제를 해결하려면 매크로 또는 Microsoft VBA(Visual Basic for Applications) 코드를 사용하여 보고서에 레코드가 없는 것을 감지한 다음 인쇄 작업을 취소할 수 있습니다. 이 문서의 단계에서는 두 기술을 모두 사용하는 방법을 설명합니다.

실행할 작업

레코드가 없는 경우 보고서 인쇄를 취소하려고 할 수 있습니다. 예를 들어 새 제품을 판매하기 시작하는 경우 아직 판매를 등록하지 않은 기간이 있을 수 있습니다. 따라서 일부 보고서에 세부 정보 레코드가 포함되지 않을 수 있으며 Count 함수와 같은 집계 함수에는 계산할 내용이 없을 수 있다는 점을 고려해야 합니다. 이러한 발생을 정상적으로 처리하려면 인쇄 작업을 취소하는 매크로를 만들 수 있습니다. 신중하게 배치된 몇 줄의 VBA 코드를 추가하여 동일한 작업을 수행할 수도 있습니다. VBA는 Access 사용하는 프로그래밍 언어입니다.

보고서의 On No Data 이벤트 프로시저에 매크로 또는 VBA 코드를 추가합니다. Access 레코드가 없는 보고서를 실행할 때마다 On No Data 이벤트를 트리거합니다. 이 문서에 설명된 매크로 및 VBA 코드는 해당 보고서에 데이터가 없는 경우 적절한 메시지를 표시하고 보고서 인쇄를 취소합니다. On No Data 이벤트 프로시저에 매크로 또는 VBA 코드를 추가하면 레코드가 없는 보고서를 열 때마다 매크로 또는 VBA 코드가 실행됩니다. 확인을 클릭하여 경고 메시지를 닫으면 매크로도 빈 보고서를 닫습니다. 매크로 또는 VBA 코드를 보고서에 추가하면 보고서 보기 또는 레이아웃 보기에 표시하려고 할 때 빈 보고서가 열리지 않지만 디자인 보기에서 보고서를 열 수 있습니다.

매크로를 사용하여 인쇄 취소

이 섹션에 설명된 매크로는 빈 보고서를 인쇄하려고 할 때 경고 메시지를 표시합니다. 확인 을 클릭하여 메시지 상자를 닫으면 매크로가 인쇄 작업을 자동으로 취소합니다. 경고 메시지를 포함하지 않으면 보고서를 인쇄하려고 할 때 아무 일도 발생하지 않는 것처럼 표시됩니다. 이는 보고서 사용자에게 혼동을 줄 수 있습니다.

매크로 만들기

  1. 탐색 창에서 변경할 보고서를 마우스 오른쪽 단추로 클릭하고 디자인 보기를 클릭합니다.

  2. 디자인 탭의 표시/숨기기 그룹에서 속성 시트를 클릭합니다.

    -또는-

    지역 및 언어 설정에 따라 보고서의 왼쪽 위 또는 오른쪽 모서리에 있는 상자를 두 번 클릭합니다.

  3. 이벤트 탭을 클릭하고 데이터 없음 속성 상자에서 작성기 단추클릭합니다.

    작성기 선택 대화 상자가 나타납니다.

  4. 매크로 작성기를 클릭한 다음 확인을 클릭합니다.

    매크로 디자이너가 시작되고 빈 매크로가 표시됩니다.

  5. 매크로 디자인 창의 매크로 함수 드롭다운 목록에서 목록에서 MessageBox 를 선택합니다.

  6. 메시지 상자에 경고 메시지의 텍스트를 입력합니다.

    예를 들어 다음을 입력 할 수 있습니다. 보고할 레코드가 없습니다.

  7. 필요에 따라 경고음 상자의 인수 값을 에서 아니요 로 변경하고 유형 목록에서 경고 메시지에 표시할 아이콘 유형을 선택합니다.

  8. 제목 상자에 경고 메시지의 제목을 입력합니다.

    예를 들어 레코드 없음을 입력할 수 있습니다.

  9. MessageBox 작업 아래의 매크로 함수 드롭다운 목록을 선택한 다음 CancelEvent를 선택합니다.

  10. 디자인 탭의 닫기 그룹에서 저장을 클릭합니다.

  11. 디자인 탭의 닫기 그룹에서 닫기를 클릭합니다. 매크로 및 보고서 속성에 대한 변경 내용을 저장할 것인지 묻는 경고 메시지가 표시되면 예를 클릭하고, 보고서를 닫고, 메시지가 표시되면 변경 내용을 저장하고, 다음 단계를 계속 진행하여 테스트합니다.

매크로 테스트

  • 탐색 창에서 매크로가 포함된 보고서를 마우스 오른쪽 단추로 클릭하고 인쇄를 클릭합니다. 선택한 옵션에 따라 Access에 경고 메시지가 표시됩니다.

    확인을 클릭하여 메시지를 닫으면 CancelEvent 작업이 인쇄 작업을 중지합니다. 다른 이벤트(예: 보기 위해 보고서 열기)를 지정하지 않아 보고서가 닫힙니다.

맨 위로 이동

VBA 코드를 사용하여 인쇄 취소

여기에 설명된 VBA 코드는 이전 섹션에서 설명한 매크로와 매우 유사합니다. 이 코드는 빈 보고서를 열 때 경고 메시지를 표시한 다음 경고 메시지를 닫을 때 인쇄 작업을 취소합니다.

VBA 코드 추가

  1. 탐색 창에서 변경할 보고서를 마우스 오른쪽 단추로 클릭하고 디자인 보기를 클릭합니다.

    참고: 이 절차를 완료하려면 레코드가 없는 보고서를 사용합니다.

  2. 디자인 탭의 표시/숨기기 그룹에서 속성 시트를 클릭합니다.

    -또는-

    지역 및 언어 설정에 따라 보고서의 왼쪽 위 또는 오른쪽 모서리에 있는 상자를 두 번 클릭합니다.

  3. 이벤트 탭을 클릭하고 데이터 없음 속성 상자에서 작성기 단추클릭합니다.

    작성기 선택 대화 상자가 나타납니다.

  4. 코드 작성기를 클릭한 다음 확인을 클릭합니다.

    Visual Basic 편집기가 시작되고 빈 이벤트 프로시저가 표시됩니다.

  5. 완료되면 Report_NoData 프로시저가 다음과 같이 표시되도록 Visual Basic 편집기에서 다음 코드를 입력합니다.

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. 완료되면 파일을 클릭한 다음 저장을 클릭합니다.

  7. 파일을 클릭한 다음 닫기 및 Microsoft Access로 돌아가기를 클릭합니다.

  8. 열린 보고서를 닫은 다음 예를 클릭하여 저장을 확인합니다.

  9. 탐색 창에서 방금 변경한 보고서를 마우스 오른쪽 단추로 클릭하고 인쇄를 클릭합니다. 선택한 옵션에 따라 Access에 경고 메시지가 표시됩니다.

Report_NoData 프로시저는 MsgBox 함수를 사용하여 메시지를 보고할 레코드가 없고확인 단추를 표시합니다. 확인을 클릭하면 프로시저의 "Cancel=True" 줄이 Access에 보고서를 취소하도록 지시합니다. Cancel 은 이벤트 프로시저에 자동으로 전달되고 이벤트 프로시저가 완료되면 Access에서 항상 검사되는 인수입니다.

맨 위로 이동

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×