본문 바로가기

EXCEL/기능

[엑셀] 카메라 기능으로 인사카드 만들기 (다른 시트의 그림 불러오기)

인사카드나 각종 산출서, 프로젝트 개요 등을 여러 페이지가 아닌 1개의 시트에 만들때 각가의 데이터는 DB 시트에서 VLOOKUP 함수 또는 OFFSET 함수 등으로 불러오면 간단히 처리가 됩니다.

그런데 이미지는 여간 불러오기가 쉽지 않습니다. 그래서 VBA를 활용해서 불러오기도 하는데요…

오늘은 다른 시트에 있는 이미지(그림)을 불러오는 방법에 대해서 알아보겠습니다.


아래의 움짤 처럼 콤보박스에서 직원을 선택하면 증명사진 부터 DB에 있는 신상정보를 자동으로 불러오는 기능입니다.


그러기 위해서는 카메라 기능 뿐만 아니라 몇가지 기능들을 같이 사용해야 합니다.


콤보상자에서 사번과 이름을 선택하면 그림이 바뀝니다.


<위 데이터는 네이버 인물정보에서 가져온 내용입니다>



위 인사카드는 아래와 같이 인사DB라는 시트에서 불러 온것으로 방법을 알아보도록 하겠습니다.





 1

 이름정의 (사번 영역 지정)


이름 정의를 하는 이유 : 콤보박스를 클릭 할때 사번과 이름이 드롭다운 되도록 하기 위해섭니다.

방법은 아래 그림과 같이 방법1, 방법2 두가지 방법이 있습니다.


방법 1 : 제일간단

1. 사번과 이름이 있는 데이터 영역을 선택 (A1) 

2. [이름상자]에  사번이라고 입력 (A2)



방법2 : 이름정의 활용

1. [수식] - [이름정의] - [새 이름] 창에서 [이름]에 '사번'을 입력하고 범위를 지정

2. [수식] - [이름관리자] - [새로 만들기] 하시면 [새 이름] 창 활성화 / 이후 방법은 위와 같음




 2

 이름정의 (증명사진 있는 셀 지정 - 이름 선택에 따라 위치가 바뀜)


이름이 선택되었을 때 증명사진의 위치(셀주소)를 불러오기 위해 이름 정의를 활용합니다.

카메라 기능에서 다른 시트의 영역 이미지를 가져오려면 반드시 [이름정의]를 이용해야 합니다.


일반적인 데이터는 VLOOKUP 함수를 이용하면 되지만 카메라 기능에서 이미지를 가져 오려면 셀 주소가 들어가야 합니다. 그래서 수식은 OFFSET함수를 사용합니다.


이름정의는 위 [방법2]와 같습니다. 



수식 = OFFSET(인사DB!$A$1,MATCH(인사카드!$H$3,인사DB!$A:$A,0)-1,3)


수식설명

참조영역 A1셀에서 MATCH 함수를 이용하여 사번을 찾고 우측으로 3칸을 이동하면 원하는 직원의 증명사진이 있는 주소가 셀 주소가 됩니다. 자세하 사항은 OFFSET 함수를 참조하세요.



 3

 인사카드에 콤보박스 넣기


콤보박스 넣기(그리기)

1. [개발도구] - [ 삽입] - [콤보상자] 버큰 클릭

2. 적당한 위치에 상자 만들기(도형 그리기와 같음)



콤보박스 속성 바꾸기

1. [콤보상자] 에서 마우스 우측클릭

2. [속성] 선택

3. [속성]창에서 [항목별] 탭 선택

4. ColumnCount 값을 2로 변경 : 콤보상자 클릭 시 사번과 이름 둘다 보여지기 위함

5. LinkedCell = H3 / ListFillRange = 사번



※ 여기서 LinkedCell은 선택된 값(사번)이 들어갈 셀 주소이며 ListFillRange는 콤보상자에 들어올 리스트 범위 입니다.



 4

 카메라 기능 (증명사진 불러오기)


1. 카메라 기능을 이용해서 증명사진을 넣을 적정한 위치에 [그림상자]를 그립니다.

2. 그리고 수식입력줄에 수식 = 증명사진 이라고 입력합니다.



위 움짤 처럼 콤보상자의 데이터가 바뀔때 마다 증명사진이 바뀌는걸 알 수 있습니다.

다른 데이터 값들은 VlOOKUP 함수를 이용해서 데이터를 불러오면 되구요.


※ 첨부파일을 참조하세요.



 

 관련글 보기


 카메라 기능(결재란 만들기)

  

 주민등록번호 오류 검증

  

 세모 증감 표시(사용자지정서식)


 

 첨부파일


인사카드.xlsm