피벗 테이블로 여러 스프레드 시트를 통합한 엑셀 보고서 생성하기

PCWorld

피벗 테이블은 엑셀이 스프레드시트 데이터베이스에서 사용자 지정 보고서를 생성하기 위해 사용하는 도구이다. 대상 데이터가 포함된 스프레드시트 부분을 선택한 다음, 테이블로 정의해 이름을 지정한다. 그러면 피벗 테이블 도구에서 사용할 수 있는 피벗 테이블이 된다.

이 도구를 사용해 하나, 또는 여러 데이터베이스 테이블을 필터링, 정렬, 재배치, 계산, 요약할 수 있다. 특정 정보를 추출, 현재 프로젝트에 필요한 관련 정보만 표시되도록 별개의 사용자 지정 보고서에 집어넣을 수도 있다.

‘다중파일 피벗 테이블 보고서 생성’을 다룬 이번 기사는 관계형 피벗 테이블 기사 시리즈의 일부이다.

관계형 데이터베이스 만들기 
엑셀 필터 활용법 
피벗 테이블 보고서 만들기 

여기서 설명하는 작업을 더 쉽게 연습할 수 있도록 엑셀 통합문서를 준비했다. 아래의 링크를 누르면 다운로드 받을 수 있다.

예제 통합 문서 다운로드 하기 

단일 플랫 파일 테이블과 관계형 다중 파일 테이블의 차이
피벗 테이블의 기본 개념부터 시작하자. 1개의 ‘플랫 파일’ 테이블은1개의 스프레드시트에서 생성한다. 반면 관계형 다중 파일 테이블은 고유 키 필드를 통해 서로 연결된 2개 이상의 스프레드시트에서 생성한다.

예제 스프레드시트에서, 피벗 도구를 사용해 Master 1 테이블에서 운전면허 번호와 운전자 이름을 Violations 테이블에서 나머지 데이터를 추출할 수 있다. 여기에서 고유 키 필드는 이 보고서에 사용하는 모든 테이블에 존재하는 License Number이다.

즉, 피벗 테이블은 스프레드시트를 작게 만들고(더 적은 수의 필드), 중복되는 데이터를 없앤다. 다시 말해, 더 효율적으로 쉽게 보고서를 만들 수 있다. 예를 들면, 피벗 테이블을 사용하지 않으면 정보와 관련해 추적할 필요가 있는 데이터의 양에 따라 달라지겠지만, 고객 스프레드시트, 제품 스프레드시트, 세일즈 스프레드시트, 재고 스프레드시트 등에 모두 고객 이름, 주소, 시, 주, 우편번호, 전화 번호를 입력해야 한다. 그러나 피벗 테이블 도구를 사용하면 한 번만 데이터를 입력한 후 공통 고유 필드를 통해 테이블을 서로 연결하면 된다. 그러면 엑셀이 나머지를 처리한다.

관계형 다중-파일 테이블: 관계 생성
피벗 테이블을 위해 여러 스프레드 시트의 관계를 생성하는 방법을 설명하겠다. 예제 스프레드시트를 이용해 시작하자.

1. Violation 테이블로 이동한다.

2. 삽입 > 피벗 테이블을 선택한다.

3. 피벗 테이블 생성 대화 창에서 표 범위가 Violations인지 확인한다. 그리고 피벗 테이블 보고서를 넣을 위치 선택에서 ‘새 워크시트’를 선택한다. 그런 후 제일 아래의 ‘데이터 모델에 이 데이터 추가’에 체크하고 ‘확인’을 클릭한다.

주: Master나 Address가 아닌 Violations 테이블을 선택하는 이유는 이 테이블의 데이터를 분석하고 계산하기 원하기 때문이다.

4. 오른쪽에 피벗 테이블 필드 패널이 열린다.

JD SARTAIN / PC WORLD

5. 상단에서 ‘데이터’ 탭을 선택한 후 데이터 도구 섹션 안의 ‘관계’를 클릭하면, 관계 관리 대화상자가 표시된다. 오른쪽 새로 만들기 버튼을 누르면 관계 만들기 대화상자가 열린다.

6. 테이블 필드 옆 아래 회살표를 클릭해 목록에서 Master1을 선택한다. 열(외래) 입력 상자에서 화살표를 클릭해 목록에서 LicenseNumber를 선택한다.

7. 관련 표 입력 상자에서 Violations 테이블을 선택한다. 관련 열(기본)에서 화살표를 클릭해 목록에서 다시 LicenseNumber를 선택한다.



8. 확인을 클릭하면 관계 관리 대화상자가 다시 열린다. 오른쪽 새로 만들기 버튼을 누르면 관계 만들기 대화상자가 열린다.

9. 테이블 필드 옆 아래 화살표를 클릭해 목록에서 다시 Master1을 선택한다. 열(외부) 입력 상자에서 화살표를 클릭해 목록에서 LicenseNumber를 선택한다.



10. 관련 표 입력 상자에서 Addresses 테이블을 선택한다. 관련 열(기본)에서 화살표를 클릭해 다시 LicenseNumber를 선택한다.

11. 확인을 클릭하면 관계 관리 대화창이 다시 열린다. 2가지 관계가 활성화 됐다. Master1 + Violations 및 Master1 + Addresses이다. 완료했으면 닫기를 클릭한다.

피벗 테이블 보고서 생성
1. 피벗 테이블 필드 패널에서 가장 위에 위치한 ‘모두’를 클릭한다.

2. 테이블 이름 화살표를 눌러 각 테이블에 필드를 표시한다. 예를 들어, Master1 테이블 아래에서 LicenseNumber 및 Name에 체크 한다.

3. Violations 테이블 아래에서는 Violation Type 및 Violation Fee에 확인 표시를 한다. 왼쪽에 필드를 추가할 때마다 확장이 되는 피벗 테이블 보고서가 즉시 표시된다.



주: 엑셀은 어떤 필드가 키 필드인지 인식한다. 관계 만들기 대화상자에서 피벗 테이블 도구를 사용해 관계를 정의했기 때문이다. 따라서 두 테이블에 키 필드(LicenseNumber)를 포함시킬 필요가 없다. 포함을 시키면, 보고서에 필드가 2개 영역에 중복되어 표시된다. 2개가 필요하지 않다면, 이 필드를 두 번 클릭하지 않는다. 즉 Master1 테이블에서 한 번만 클릭한다.

상사가 위반(Violations)과 위반한 운전자 주소지의 우편번호(ZIP Code)사이에 관계가 있는지 알고 싶어 한다고 가정하자. 아주 쉽게 처리할 수 있다.

4. 먼저 ZIP Codes가 텍스트 필드로 입력되었는지 확인한다. Master1 스프레드시트(탭 명은 MasterDB) 테이블로 이동해 Zip 필드를 선택한다.

5. 그리고 홈 > 서식> 셀 서식을 선택한다. 숫자 탭 아래 목록에서 텍스트를 선택한다.



6. 새로 생성한 피벗 테이블 시트로 가서 오른쪽 피벗 테이블 필드 속에서 Master1 테이블을 스크롤, Zip 필드에 체크한다.

7. 피벗 테이블 필드 창 안에 노란색 상자가 열리고, 그 안에 ‘테이블 사이에 관계가 필요할 수 있습니다’라는 내용과 ‘만들기’ 버튼이 표시된다. 이 버튼을 눌러 관계 생성 대화창에서의 관계를 다시 정의(테이블 : MASTER1, 열(외래) : License Number, 관련 표 : VIOLATIONS, 관련 열(기본) : License Number)하면, 엑셀은 ‘두 열의 관계가 이미 존재합니다’라는 메시지를 표시한다. 그러면 취소를 클릭한다. 위 구석의 X를 눌러 노란색 창을 닫아 시간을 절약할 수도 있다.


8. 엑셀이 아직 ZIP Code를 숫자로 처리하고, ‘합계’ 열에 배치했다면, 오른쪽 피벗 테이블 필드에서 Zip 필드를 클릭하고, 피벗 테이블 필드 패널 오른쪽 아래 값 상자로 이동해 화살표를 클릭하면 표시되는 팝업 메뉴 목록에서 ‘행 레이블로 이동’을 선택한다. 그러면 ZIP코드가 각각의 Violation 아래로 이동한다. 훨씬 더 낫다.




이제 필드를 몇개 더 추가해 보고서를 더 좋게 만들어보자.

9. 피벗 테이블 필드 패널의 Violations 테이블 아래 Violation Date 확인상자에 표시를 한다. 주의 사항이 있다. 엑셀이 열에 날짜를 추가할 것이다. 좋지 않다. 데이터가 흩어져, 읽기가 힘들다.

10. 피벗 테이블 필드 패널 안의 Violations Date (확인상자 옆)를 오른쪽 클릭해 드롭다운 메뉴 목록에서 행 레이블에 추가를 선택한다. 날짜가 ZIp Code와 Violation Type 아래 위치하게 된다. 목록의 첫 번째 운전자인 Roger David Anderson은 2015년 2월 10일에 불법 유턴을 했다.

11. 마지막으로 피벗 테이블 필드 패널의 Violations 테이블 아래 Points 필드를 체크한다.

12. 엑셀이 보고서에 필드를 추가시킨 후 License Number(운전자 별)를 기준으로 포인트를 합산한다. 그리고 ‘포인트 총계’를 추가한다. 피벗 테이블 도구를 사용하면 아주 쉽게 보고서에 필드를 추가, 또는 제거할 수 있다.

주: 소계와 총계는 볼드체 활자로 표시된다. 위반은 일반 활자이다.



피벗 테이블 도구 안의 디자인 탭(보고서가 활성 상태에서만 표시)을 이용해 색상을 추가하고, 테이블 레이아웃 서식을 지정할 수 있다. 행의 색상이 교차해 다르게 지정되어 있을 때, 그리고 필드 총계가 볼드체 활자일 때 테이블을 읽기가 좋다. 한 번 테스트를 해보기 바란다.

피벗 테이블 팁
1. 통합 문서에 고유 공통 필드(예제의 License Number 같은 필드)로 다른 스프레드시트와 연결할 수 있는 스프레드시트가 한 개 이상 있어야 한다.

2. 둘째, Master 테이블에는 기록 당 LicenseNumber가 1개이다. 이를 LicenseNumber 기록이 여러 개인 몇몇 Slave 테이블들과 연결한다. 이를 1대다 관계라고 한다.

3. 통합 문서의 모든 스프레드시트를 선택해 테이블로 정의하고, 각각 고유의 이름을 지정한다.

4. 테이블 간 관계를 정의할 때, 관련 테이블의 필드 서식이 동일해야 한다. 예를 들어, 날짜 서식이 일치해야 한다. '12/25/2018'과 'Dec 25, 2018’을 섞어 사용할 수 없다. editor@itworld.co.kr