보고서에 레코드가 없는 경우 인쇄 취소

참고:  사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서 가 여기 있습니다.

기본적으로 레코드가 없는 보고서도 인쇄됩니다. 이 문제를 해결하려면 보고서에 레코드가 있는지 여부를 검사하고 레코드가 없을 경우 인쇄 작업을 취소하는 매크로나 Microsoft VBA(Visual Basic for Applications) 코드를 사용합니다. 이 문서에서는 이 두 가지 기술의 사용 방법을 단계별로 설명합니다.

실행할 작업

매크로 사용 하 여 인쇄 취소

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

보고서에 레코드가 없는 경우 보고서 인쇄를 취소할 수 있습니다. 예를 들어 새 제품의 판매를 시작할 경우 처음 얼마 동안은 등록할 판매 데이터가 아직 없을 수 있습니다. 따라서 일부 보고서에 세부 레코드가 없거나 Count 함수와 같은 집계 함수로 계산할 데이터가 전혀 없을 수 있습니다. 인쇄 작업을 취소하는 매크로를 만들어 이러한 문제를 처리할 수 있습니다. 적절한 위치에 몇 줄의 VBA 코드를 추가하여 이 문제를 처리할 수도 있습니다. VBA는 Microsoft Office Access 2007에서 사용되는 프로그래밍 언어입니다.

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

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

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

매크로 만들기

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

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

    또는

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

  3. 이벤트 탭을 클릭 하 고 On No Data 속성 상자에서 작성기 단추 를 클릭 합니다.

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

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

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

  5. 매크로의 첫 번째 행에서 매크로 함수 열의 필드를 클릭하고 목록에서 MsgBox를 선택합니다.

  6. 매크로 디자이너의 아래쪽 구역에 있는 매크로 함수 인수메시지 상자에 경고 메시지로 사용할 텍스트를 입력합니다.

    예를 들어 보고할 레코드가 없습니다.라는 텍스트를 입력할 수 있습니다.

  7. 필요한 경우 경고음 상자의 인수 값을 예/Yes에서 아니요/No로 변경하고 종류 목록에서 경고 메시지에 표시할 아이콘 종류를 선택합니다.

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

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

    변경 내용이 매크로 디자이너의 위쪽에 있는 MsgBox 매크로 함수 옆의 매크로 인수 열에 나타납니다. 

  9. 매크로 디자이너의 위쪽에서 매크로 함수 열의 다음 셀(MsgBox 바로 아래의 셀)을 클릭하고 CancelEvent를 선택합니다.

    매크로는 다음과 같이 나타납니다. 인수에는 다른 텍스트를 사용할 수도 있습니다.

    인쇄 작업을 취소하는 예제 매크로

  10. 디자인 탭의 닫기 그룹에서 다른 이름으로 저장 을 클릭 한 다음 다른 이름으로 저장 대화 상자를 사용 하 여 매크로 이름을 지정 합니다.

  11. 매크로를 닫습니다. 매크로 및 보고서 속성의 변경 내용을 저장할지 묻는 메시지가 나타나면 를 클릭하고 다음 단계로 진행하여 매크로를 테스트합니다.

매크로 테스트

  • 탐색 창에서 매크로가 들어 있는 보고서를 마우스 오른쪽 단추로 클릭하고 인쇄를 클릭합니다. 선택한 옵션에 따라 다음과 유사한 경고 메시지가 나타납니다.

    보고서에 레코드가 없을 경우 나타나는 메시지 상자

    확인을 클릭하여 메시지 상자를 닫으면 CancelEvent 매크로 함수에 의해 인쇄 작업이 중지됩니다. 보고서를 보기용으로 여는 등의 다른 이벤트를 지정하지 않았으므로 보고서가 닫힙니다.

맨 위로 이동

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

여기에서 설명하는 VBA 코드는 이전 섹션에서 설명한 매크로와 비슷하게 작동합니다. 즉, 빈 보고서를 열면 경고 메시지가 표시되고 이 경고 메시지를 닫으면 인쇄 작업이 취소됩니다. 

VBA 코드 추가

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

    참고: 완료 하기 위해이 절차는 없는 레코드가 포함 된 보고서를 사용 합니다.

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

    또는

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

  3. 이벤트 탭을 클릭 하 고 On No Data 속성 상자에서 작성기 단추 를 클릭 합니다.

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

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

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

  5. Visual Basic Editor에서 다음 Report_NoData 프로시저와 동일하게 코드를 입력합니다.

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

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

  8. 열려 있는 보고서를 닫은 다음 Yes 저장을 확인 하려면 클릭 합니다.

  9. 탐색 창에서 방금 변경한 보고서를 마우스 오른쪽 단추로 클릭하고 인쇄를 클릭합니다. 그러면 다음과 같은 메시지가 표시됩니다.

보고서에 레코드가 없을 경우 나타나는 메시지 상자

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

맨 위로 이동

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×