본문 바로가기
경주사랑컴퓨터학원

엑셀 콤보 상자와 콤보 상자 연결하기-경주엑셀전문학원

by 경주사랑신문 2022. 9. 7.

Question

두 개의 콤보 상자를 이용하여 데이터를 입력하려고 합니다. 첫 번째 콤보 상자는 부서를 선택하기 위한 것이고 두번째 콤보 상자는 직원 이름을 선택하기 위한 것입니다. 알고 싶은 것은 첫번째 콤보 상자에서 영업부를 선택하면 두 번째 콤보 상자에 영업부 직원의 이름만 표시되도록 할수 있는가 하는 문제입니다. 첫 번째 콤보 상자에서 총무부를 선택하면 두 번째 콤보 상자에서는 충무부 직원의 이름만 표시되어야 하겠죠.

Answer

이름 정의를 이용하면 콤보 상자와 콤보 상자를 연동시킬 수 있습니다. 물론 이름을 정의할때 수식이 사용됩니다. 이런 작업 방법은 여러 곳에서 응용될 수 있으므로 한 번 정확하게 알아두면 큰 재산이 될 수 있습니다.

콤보상자.xlsx
0.01MB

Step by Step

  1. 아래 워크시트에서 부서 선택 콤보 상자를 이용하여 부서를 선택하고 이름 선택 콤보 상자를 이용하여 해당 부서의 직원 이름을 선택하려고 합니다. 부서와 부서별 직원 이름은 이후에도 추가될수 있다는 가정 하에 문제를 처리해 보겠습니다.

엑셀 콤보상자 연결하기

2. 수식 - 이름 - 정의 메뉴를 선택한 후 부서로 이름을 입력합니다. [참조대상] 입력 상자에 =OFFSET($B$3,0,0,COUNTA($B$3:$B$12))를 입력하고 확인 단추를 클릭합니다.

  • OFFSET(참조,행,열, 높이, 너비) : 참조에서 지정한 행,열 만큼 떨어진 위치에서 지정한 높이,너비 만큼 참조영역을 구합니다.
  • 여기서는 B3 셀부터 0행,0열 떨어진 위치 즉 B3셀 부터 B3:B12 범위에서 비어있지 않은 셀의 개수만큼 참조영역을 구합니다.
  • 만약 앞의 워크시트처럼 5개의 부서가 입력되어 있으면 COUNTA($B$3:$B$12)의 결과는 5이므로 B3 셀부터 5개 행이되어 B3:B7 영역이 이름 부서가 참조하는 영역이 됩니다.
  • 부서가 더 추가되더라도 COUNTA($N$3:$B$12)로 개수를 구하므로 추가된 만큼 이름 부서가 해당영역을 참조하게 됩니다.

엑셀OFFSET함수

3. 부서 선택 콤보 상자를 마우스 오른쪽 버튼으로 누른 다음 컨트롤 서식 대화 상자에서 입력 범위 = 부서로 지정하고 셀 연결은 I3으로 지정한 후 확인 단추를 클릭합니다. I3 셀은 콤보 상자에 가려 값이 입력되더라도 보이지 않게 됩니다.

엑셀 콤보상자연결하기

4. (삽입)-(이름) (정의) 메뉴를 선택한 후 기준으로 이름을 입력합니다. (참조 대상) 입력 상자에 수식 「=OFFSET($C$2,1,$I$3-1,COUNTA(OFFSET($C$2,1,$I$3-1,10)))을 입력하고 (확인) 단추를 클릭합니다.

ㆍ이름 '기준'은 부서 선택 콤보 상자에서 선택한 부서의 직원 이름이 있는 범위를 참조하도록 식을 작성해야 합니다.

여기서는 (C2) 셀부터 1행 $I$3-1' 열 떨어진 위치부터 참조 영역을 구하기 시작합니다. 만약 부서를 '기획실'로 선택했다면 (13) 셀에 31 입력되어 있으므로 (C2) 셀부터 1행 2열 떨어져 있는 위치 즉, (E3) 셀부터 참조 영역을 구합니다.

• 참조 영역의 높이는 직원 이름이 몇 개 입력되어 있느냐에 따라 달라져야 하므로 COUNTA 함수를 사용하여 구합니다.

(13) 셀의 값이 3일 때 수식 「COUNTA(OFFSET($C$2,1,$I$3-1,10))은 (C2) 셀부터 1행 2열 떨어져 있는 (E3) 부터 10 높이만큼 즉, (E3:E12) 영역에서 비어있지 않은 셀의 개수를 구하므로 결과는 4로 계산됩니다.

결국 기획실'을 선택하여 (13) 셀에 3이 입력되어 있을 때 이름 '기준'은 (E3:E6] 영역을 참조하게 되는 것입니다.

엑셀콤보상자연결하기-경주엑셀전문학원

5. 이름 선택 콤보 상자를 마우스 오른쪽 버튼으로 누르고 컨트롤 서식) 메뉴를 선택합니다. (입력 범위)를 기준'으로 지정하고 (셀 연결)은 (K3) 셀로 지정한 후(확인) 단추를 클릭합니다. [K3] 셀에 값이 입력되어도 두 번째 콤보 상자에 가려 화면상으로는 보이지 않게 됩니다.

6. 부서 선택 콤보 상자에서 원하는 부서를 선택한 다음 이름 선택 콤보 상자의 목록 단추를 눌러보면 해당 부서의 직원 이름만 나타나는 것을 알 수 있습니다

경주엑셀학원