19차시

보고서 작성과 활용

Part 3. 데이터베이스 일반 · 출제 빈도 ★★★

이 차시를 공부하는 이유

보고서는 폼과 구조가 비슷해 함께 공부하면 효율적입니다. 시험에서는 '어느 구역에 넣으면 어디에 몇 번 나오는가'와 페이지 번호 식, 누적 합계가 자주 출제됩니다.

2급에서 먼저 보면 좋은 내용

1급 전용 과목이지만, 2급 부분합(그룹별 요약)을 알면 보고서의 그룹 머리글·바닥글이 쉽게 이해됩니다.

학습 목표

보고서의 보기 형태와 구역별 표시 위치를 설명할 수 있다.
보고서 마법사와 정렬 및 그룹화 기능을 활용할 수 있다.
페이지 번호·날짜·집계 정보를 식으로 표시할 수 있다.
누적 합계, 중복 내용 숨기기, 하위 보고서와 여러 보고서 종류를 이해한다.

핵심 개념

1. 보고서의 개요와 보기 형태
보기특징
인쇄 미리 보기종이에 출력되는 모양을 페이지 단위로 확인
보고서 보기화면 출력용. 페이지 구분 없이 전체를 표시, 필터 적용 가능
레이아웃 보기실제 데이터를 보면서 컨트롤 크기·위치, 그룹·합계를 수정
디자인 보기컨트롤로 보고서를 만들거나 수정. 실제 데이터는 표시되지 않음
  • 테이블·쿼리·SQL문의 데이터를 요약·그룹화해 출력하는 개체입니다. 컨트롤과 이벤트 프로시저는 쓸 수 있지만 데이터 입력·추가·삭제는 할 수 없습니다.
  • 외부 데이터를 연결한 테이블로도 보고서를 만들 수 있습니다.
2. 보고서의 구역
구역표시 위치와 용도
보고서 머리글첫 페이지 맨 위에 한 번 — 로고, 제목, 날짜
페이지 머리글모든 페이지 위 (첫 페이지는 보고서 머리글 다음) — 열 제목
그룹 머리글각 그룹의 위에 반복 — 그룹 이름, 요약
본문레코드마다 반복되는 실제 데이터
그룹 바닥글각 그룹의 아래에 반복 — 그룹별 합계·평균
페이지 바닥글모든 페이지 아래 — 페이지 번호, 날짜
보고서 바닥글마지막 페이지에 한 번(마지막 페이지 바닥글 위) — 전체 총계
시험 함정 포인트
페이지 머리글/바닥글에서는 Sum·Avg·Count 같은 집계 함수로 요약 정보를 표시할 수 없습니다. 집계는 그룹이나 보고서 머리글/바닥글에 넣습니다.
3. 보고서 만들기와 정렬 및 그룹화
  • 보고서 마법사 순서: 원본·필드 선택 → 데이터 표시 형식 → 그룹 수준 → 정렬·요약 옵션(정렬은 최대 4개 필드) → 모양 → 이름. 여러 테이블·쿼리의 필드를 함께 선택할 수 있습니다.
  • 요약 옵션: 숫자 필드의 합계·평균·최소·최대, '요약만' 표시, 총합계에 대한 그룹 합계 비율
  • 그룹화 기준 필드를 고르면 기본으로 오름차순 정렬되며, 필드나 식으로 최대 10개까지 그룹화할 수 있습니다.
  • 날짜는 연·분기·월·주·일 단위, 문자열은 첫 문자·처음 두 문자 등, 숫자는 지정한 간격으로 그룹화합니다.
  • 그룹을 만들려면 그룹 머리글이나 바닥글 중 하나 이상을 표시해야 하며, 그룹을 삭제하면 그 구역의 컨트롤도 함께 삭제됩니다.
  • 그룹 머리글의 반복 실행 구역 속성을 '예'로 하면 그룹이 다음 페이지로 넘어갈 때 그룹 머리글이 매 페이지 다시 표시됩니다.
  • 보고서 속성: 레코드 원본, 필터, 필터 사용, 정렬 기준, 기본 보기(보고서 보기/인쇄 미리 보기)
4. 페이지 번호·날짜·집계 표시
텍스트 상자의 컨트롤 원본에 입력하는 식
=[Page] → 3 ="페이지 " & [Page] → 페이지 3 =[Page] & "/" & [Pages] & "페이지" → 3/10페이지 =Format([Page], "000") → 003 =Date() =Now() =Time() → 오늘 날짜 / 날짜와 시간 / 현재 시간 =Sum([금액]) =Avg([점수]) =Count(*) → 그룹·보고서 머리글/바닥글에서 집계
  • [Page]는 현재 페이지, [Pages]는 전체 페이지 수, &는 문자열 연결입니다.
  • [페이지 번호] 대화상자: 형식(N 페이지, N/M 페이지), 위치(위쪽·아래쪽), 맞춤(왼쪽·가운데·오른쪽·안쪽·바깥쪽), 첫 페이지에 표시 여부
  • 집계 식을 그룹 머리글/바닥글에 넣으면 그룹마다, 보고서 머리글/바닥글에 넣으면 전체에 대해 계산됩니다.
5. 누적 합계와 중복 내용 숨기기
누적 합계 속성 (텍스트 상자, 데이터 탭)결과
아니요 (기본)현재 레코드의 값만 표시
그룹그룹별로 누적, 새 그룹이 시작되면 다시 처음부터
모두그룹과 관계없이 보고서 끝까지 누적
  • 컨트롤 원본을 =1로 하고 누적 합계를 '그룹'으로 하면 그룹별 일련번호(1, 2, 3… 그룹마다 다시 1), '모두'로 하면 전체 일련번호가 매겨집니다.
  • 중복 내용 숨기기(형식 탭): 현재 값이 바로 앞 레코드와 같으면 표시하지 않습니다. 보고서에서 사용합니다.
  • 확장 가능: 데이터 길이에 맞춰 컨트롤 높이가 자동으로 늘어납니다.
시험 함정 포인트
누적 합계는 보고서의 텍스트 상자에만 있는 속성입니다. 폼에는 없습니다.
6. 하위 보고서와 여러 가지 보고서
종류특징
하위 보고서보고서 안의 보고서. 1:N에서 '1'이 주 보고서. 테이블·쿼리·폼·보고서로 작성, 7수준까지 중첩
레이블 보고서우편 발송용 레이블. 크기·형식·텍스트 모양·필드·정렬 지정, 한 줄에 필드 최대 10개
업무 문서 양식거래명세서, 세금계산서 등 표준 양식에 맞춰 출력
크로스탭 보고서크로스탭 쿼리를 레코드 원본으로 행·열 그룹 집계
우편 엽서우편 엽서 형식 출력
  • 페이지 설정: [인쇄 미리 보기]→[페이지 설정]. 여백, 용지 방향, 크기, 데이터만 인쇄(레이블·테두리·선 제외), 열 탭(열 개수, 행·열 간격, 열 레이아웃 행 우선/열 우선)
  • 쿼리·폼·보고서마다 용지 방향·크기·여백을 다르게 지정할 수 있습니다.

확인 문제

1 / 5
문제 1
보고서의 구역에 대한 설명으로 옳지 않은 것은?
①
보고서 머리글은 첫 페이지 맨 위에 한 번 표시된다.
②
페이지 머리글은 모든 페이지의 위쪽에 표시된다.
③
그룹 바닥글에는 그룹별 합계 같은 요약 정보를 넣는다.
④
보고서 바닥글은 모든 페이지의 아래쪽에 표시된다.
💡 정답 ④ 해설: 보고서 바닥글은 마지막 페이지에 한 번만 표시됩니다. 모든 페이지 아래쪽에 표시되는 것은 페이지 바닥글입니다.
문제 2
보고서에서 현재 페이지가 3, 전체 페이지가 10일 때 '3/10페이지'로 표시하는 식은?
①
=[Page] & "/" & [Pages] & "페이지"
②
=[Pages] & "/" & [Page] & "페이지"
③
=Page / Pages & "페이지"
④
="[Page]/[Pages]페이지"
💡 정답 ① 해설: [Page]는 현재 페이지, [Pages]는 전체 페이지이며 &로 문자열과 연결합니다.
문제 3
보고서에서 그룹별로 1부터 다시 시작하는 일련번호를 표시하려고 할 때 텍스트 상자의 설정으로 옳은 것은?
①
컨트롤 원본: =1, 누적 합계: 아니요
②
컨트롤 원본: =1, 누적 합계: 그룹
③
컨트롤 원본: =1, 누적 합계: 모두
④
컨트롤 원본: =Count(*), 누적 합계: 모두
💡 정답 ② 해설: =1을 누적하면 1, 2, 3…이 되며, '그룹'으로 설정하면 그룹이 바뀔 때마다 다시 1부터 시작합니다.
문제 4
다음 중 Sum, Avg 같은 집계 함수를 사용하여 요약 정보를 표시할 수 없는 구역은?
①
보고서 머리글
②
그룹 머리글
③
그룹 바닥글
④
페이지 바닥글
💡 정답 ④ 해설: 페이지 머리글/바닥글에서는 집계 함수로 레코드 요약 정보를 표시할 수 없습니다.
문제 5
현재 레코드의 값이 바로 앞 레코드의 값과 같을 때 그 값을 표시하지 않도록 하는 보고서 컨트롤 속성은?
①
확장 가능
②
중복 내용 숨기기
③
반복 실행 구역
④
누적 합계
💡 정답 ② 해설: '중복 내용 숨기기'를 '예'로 설정하면 이전 레코드와 같은 값은 표시하지 않습니다. 반복 실행 구역은 그룹 머리글을 매 페이지에 다시 표시하는 속성입니다.
0/5
훌륭합니다!
모든 문제를 정확히 풀었습니다.

19차시 문제 더 풀기

확인문제와 실전 모의고사에서 이 차시 범위 문제만 모아 해설과 함께 볼 수 있습니다.

주제별 문제 보기
이전 차시
18차시. 폼·컨트롤
다음 차시
20차시. Access 매크로·VBA