오빠두엑셀 `2026 무료 챌린지` 오픈! 완주하고 수료증 받아가세요! 5년 연속 IT분야 베스트셀러! 「 진짜쓰는 실무엑셀 」로 2026년 공부 끝내기 엑셀이 막히셨나요? Q&A 게시판에서 바로 해결하세요.
메뉴
대시보드 마스터 클래스

다중조건 목록상자 만들기

오빠두엑셀 by 오빠두엑셀
  • 학습시간 18분
  • 난이도 중급
  • 작성일 2019.04.20

엑셀 항목정리의 기초! - 이중 유효성검사 목록상자 만들기

이 강의에서는 표 기능을 활용해 함수 없이도 동작하는 엑셀 다중조건 목록상자를 만드는 방법을 다룹니다. 가계부 입력 시트에서 계정과목과 소계정이 연동되도록 이중유효성 검사를 구성하고, 수입·지출 구분에 따른 아이콘 집합과 마지막셀 자동 이동 버튼까지 함께 적용해, 반복 입력 작업을 안정적으로 자동화하는 절차를 정리합니다.

다중조건 목록상자 만들기
DOWNLOADS

실습자료를 준비했어요

수업에서 사용한 예제 파일과 보충 자료를 한 곳에 정리했습니다!👇

실습 가이드

강의 소개

이번 강의에서는 표 기능을 활용한 ‘엑셀 다중조건 목록상자’ 제작 방법을 살펴봅니다. 표 기능을 활용하면 이중유효성 목록상자를 함수 없이도 매우 간단하게 구현할 수 있습니다. 이번 예제에서는 다중조건 목록상자뿐 아니라 엑셀의 아이콘 집합 기능과 마지막셀 이동 버튼 제작 방법까지 함께 다룹니다.

이번 강의에서 다루는 핵심 내용은 다음 세 가지입니다.

  1. 가계부의 각 계정과목 선택 시, 소계정 항목이 자동으로 반영되는 이중유효성 검사 목록상자 만들기
  2. 수입/지출 항목에 따라 위/아래 화살표가 출력되는 아이콘집합 사용법
  3. 버튼을 클릭하면 시트의 마지막셀로 자동 이동하는 버튼 만들기

이번 강의에서 소개하는 표 기능 기반의 이중 유효성 목록상자는 다뤄야 할 항목 수가 많아질수록 다소 불편해질 수 있습니다.

따라서 항목이 많은 환경에서는 함수를 활용한 다중 데이터유효성 검사 목록상자를 사용하면 더 폭넓은 자동화가 가능합니다. 함수를 활용한 다중 데이터유효성 검사 목록상자에 대한 자세한 내용은 아래 관련 강의를 참고하세요.

1. 도형 옵션의 ‘변하지 않음’ 속성 설정

가계부 시트에서 셀 너비를 변경하면 해당 셀에 배치된 도형의 너비도 함께 변합니다. 이러한 동작을 막기 위해 셀 크기 변화와 무관하게 ‘도형’의 크기가 고정되도록 설정합니다.

따라서 이전 강의에서 만들었던 시트 이동용 ‘도형’의 속성을 변경해 주겠습니다.

도형을 선택한 뒤 [도형 서식]을 클릭합니다. 이어서 [도형 옵션]의 [속성] 항목에서 [변하지 않음]을 선택합니다.

도형 변하지 않음 설정

다음으로 가계부의 입출금계좌, 계정과목 및 소계정 항목 관리를 위한 환경설정 시트를 작성합니다. 아래 예시를 참고할 수 있도록 정리했습니다.

예시를 참고하여 본인의 소득/지출 패턴에 맞게 계정과목과 소계정 항목을 작성해 보세요.

입출금계좌 및 계정과목 구분
입출금계좌 수입 지출 이동
국민은행-급여통장 회사급여 교통비 계좌이동(+)
신한은행-생활비통장 주식배당금 식비 계좌이동(-)
우리은행-비상금통장 기타소득 주거통신비 예적금(+)
우체국-적금통장 건강문화비 예적금(-)
신한은행-Fun신용카드(7010) 경조사회비
등등..
계정과목별 소계정 구분
회사급여 주식배당금 기타소득 교통비 식비
월급 S사 배당금 유튜브수익 대중교통 주식
상여금 H사 배당금 광고수익 택시비 커피/음료
A사 배당금 주류비 간식
.. 기타교통비 기타식비
주거통신비 건강문화비 경조사회비 세금/이자 교육육아비
월세 운동/레저 경조사비 법인세 학원/교재비
관리비 여행모임 모임회비 소득세 육아용품
공과금 문화/생활 데이트비용 기타세금 등록금
인터넷비 병원비 선물구매비 대출이자 기타
기타통신비

이제 ‘다중조건 목록상자’를 만들기 위해 동적범위를 설정합니다.

OFFSET 함수 동적범위를 활용하는 방법도 있지만, 이번 강의에서는 더 간단한 방법인 표 기능을 활용하여 진행합니다. 따라서 방금 입력한 각 계정과목 및 소계정 범위를 모두 표로 변환합니다.

각 범위에는 ‘머릿글’이 포함되어 있으므로, 표로 변경하는 안내창에서 ‘머릿글 포함’ 옵션에 반드시 체크해 주세요.

범위를 표로 변경하는 단축키 : Ctrl + T

엑셀 표 만들기

표를 생성한 뒤, 표가 선택된 상태에서 [디자인] – [표 이름] 항목으로 이동합니다. 이어서 각 표의 머릿글과 동일한 이름으로 표 이름을 변경합니다.

엑셀 표 이름 설정

4. 가계부 자료 입력을 위한 표 작성하기

가계부 데이터가 입력될 표를 작성합니다. [가계부입력] 시트로 이동한 뒤, 아래 항목을 추가해 주세요. (아래 항목은 가계부 사용 목적에 따라 다른 항목으로 대체하여 사용할 수도 있습니다.)

가계부 Raw Data 항목
날짜 구분 계정과목 소계정 입출금계좌 증감 금액 비고

항목을 입력한 뒤, 아래 그림과 같이 표의 셀 서식을 변경합니다. 셀 서식을 변경하는 방법과 빠른 작업을 위한 단축키에 대한 자세한 설명은 영상강의를 참고하세요.

엑셀 가계부 항목 입력 셀서식 변경

이제 [구분]·[계정과목]·[소계정] 항목에 따라 선택된 상위 값에 해당하는 하위 값만 목록상자에 표시되도록 다중조건 목록상자를 구성합니다.

각 항목별로 데이터가 입력될 범위를 선택한 후, [데이터] – [데이터 유효성 검사]로 이동합니다. [제한대상]은 ‘목록’으로 선택한 다음, [원본]에 아래 수식을 입력합니다.

  1. 구분 : 수입,지출,이동
  2. 계정과목 : =INDIRECT(동일한 행의 구분 셀 [숫자앞 $ 표시 제거])
  3. 소계정 : =INDIRECT(동일한 행의 계정과목 셀 [숫자앞 $ 표시 제거])
  4. 입출금계좌 : =INDIRECT(“입출금계좌”)

다중 데이터유효성 검사 설정

위와 같이 설정을 마치면 각 상위 그룹에서 선택한 값에 따라 목록상자의 표시 항목이 자동으로 변하는 다중조건 목록상자가 완성됩니다.

엑셀 다중조건 목록상자 완성

이번에는 수입/지출/이동 구분에 따라 증감 화살표가 표시되도록 [조건부서식]의 [아이콘집합]을 적용합니다.

증감을 표시할 셀에 아래 IF 함수를 사용한 공식을 입력합니다.

=IF(셀="수입",1,IF(셀="지출",-1,IF(셀="이동",0,"")))

위 공식을 입력하면 증감값에 따라 결과값이 다음과 같이 출력됩니다.

  • 수입 : 1
  • 지출 : -1
  • 이동 : 0
  • N/A : 빈칸

위 수식을 증감을 나타내는 모든 범위에 입력한 뒤, 해당 범위가 선택된 상태에서 [홈] – [조건부서식] – [아이콘집합] – [기타규칙]으로 이동하여 아래와 같이 아이콘집합 규칙을 설정합니다.

증감을 시각화할 때에는 숫자 없이 아이콘만 표시되도록 ‘아이콘만 표시’ 항목에 체크해 주세요. 아이콘 집합 사용법에 대한 다양한 실전 예제는 이전 관련강의에서 자세히 다루고 있습니다.

엑셀 아이콘 집합 환경설정

마지막으로 이전 강의에서 살펴본 ‘마지막셀을 자동으로 찾아 이동하는 버튼’을 생성합니다. 사용자가 새로운 가계부 항목을 추가하더라도 버튼을 클릭하면 자동으로 마지막셀을 찾아 이동하므로 작업 편의성이 크게 향상됩니다. 자세한 제작 방법은 관련 강의를 참고하세요.

마지막셀 이동버튼에 사용된 사용자지정범위 수식
=INDEX(가계부입력!$B$7:$B$1000,MATCH(9.999999999E+307,가계부입력!$B$7:$B$1000,1)+1)

댓글 31
5 (21개 평가)
yotabyte
yotabyte 2020.02.05 18:53
마지막셀로 이름정의하고 이미지 클릭 시, 제대로 이동하는 것을 확인했는데,
링크 도형을 실수로 삭제하고 신규 도형으로 만들고 링크를 만들려고 하는데 "정의된 링크"에 "마지막셀"이 보이지 않습니다.
분면 이름관리자에서 보면 "마지막셀"이 정의되어 있습니다.
뭐가 문제일까요?
오빠두엑셀
오빠두엑셀 작성자 2020.02.05 21:43
안녕하세요?^^ 동적범위로 지정한 이름정의범위는 하이퍼링크로 연동할 수 없습니다.
그래서 약간의 트릭을 써서, 아래 순서로 작업하시면 됩니다.
1. 일반 셀 범위를 이름정의범위로 생성
2. 범위를 하이퍼 링크로 연결
3. 이름정의범위를 동적범위로 연동

자세한 설명은 아래 링크 3번 항목부터 확인해보시겠어요?
https://www.oppadu.com/마지막셀-자동-이동-버튼-만들기/
제 답변이 도움이 되셨길 바랍니다.
감사합니다.
yotabyte
yotabyte 2020.02.06 15:55
감사합니다. 많은 도움 됐습니다.
dyhbt
dyhbt 2020.02.12 23:52
예제 엑셀 파일이 다른 내용의 엑셀 파일인 것 같습니다. 아마도 대시보드 1강의 엑셀 파일인 것 같네요.
PDF 파일은 맞는 것 같구요. 확인 부탁드립니다.
오빠두엑셀
오빠두엑셀 작성자 2020.02.13 06:47
안녕하세요~^^
다운로드 항목에 완성파일을 따로 구분하여 올려드렸으니 확인해주시겠어요?
소중한 의견 감사드립니다^-^
준아아빠
준아아빠 2020.03.02 19:24
감사합니다.. ^^
엑셀종배
엑셀종배 2020.04.06 22:07
예~전에 보고 한동안 잊고 있었는데, 좋은 강의를 통해 더 깨달은 바가 있는 것 같습니다. 좋은 강의 감사드려요~
갓쩌리
갓쩌리 2020.04.09 19:08
정말 유용한 정보이네요!!
이혜
이혜 2020.04.11 16:31
형님
구독자
구독자 2020.04.20 17:27
연도를 다중목록에 넣으려고 하니 표이름을 연도(숫자로 시작)로 할 수 없을때는 어떻게 해야 하나요?
오빠두엑셀
오빠두엑셀 작성자 2020.04.21 13:25
안녕하세요?^^
표 이름은 숫자로 시작할 수 없습니다. 이는 엑셀 근본적인 문제이므로.. 해결방법이 없습니다.
연도: 2016
연도: 2017
이런 식으로 입력해보는건 어떠실까요?^^
답변이 도움이 되셨길 바랍니다.
감사합니다.
빛돌이
빛돌이 2020.05.09 00:56
재미있네요
f9****
f9**** 2020.05.13 14:01
3번째 강의 수강완료.
다중조건목록상자 이제 완전히 이해를 했습니다. 정말 감사합니다.
많은 도움이 될 것 같습니다.
맛있는 감자
맛있는 감자 2020.05.23 17:53
강사님 설명이 조금 빨라서 그렇지 ..아주 요용한 강의 잘 배우고 있습니다. 감사합니다.
하나 질문이 있습니다.
상기와 같이 서식을 일자별로 다른 시트로 만들어서 사용하고 있습니다
그런데 월말에 각 계정과목별로 누적합계를 구하고 싶습니다.
즉 각 시트별로 계정과목별 누적합계가 계산되는 별도의 표가 있고, 매월말에는
그 계정과목별 누적합계가 있는 표만 보면 각 항목별 합계를 알수 있도록 말이죠
어떻게 하면 될까요? 아직 엑셀 함수 초자라 머리 속이 복잡하기만 합니다.
감사합니다
오빠두엑셀
오빠두엑셀 작성자 2020.05.24 03:05
안녕하세요.
사용중인 데이터 형식에 따라 다르겠지만, 일자별(1,2,3,4..,31)로 시트를 관리중이시라면
INDIRECT 함수를 응용해보시기 바랍니다.^^
=INDIRECT('1'!A1) 은 1 시트의 A1셀을 참조합니다.
참조된 범위를 SUMIF 함수 등과 응용하셔서 일자별 합계를 구하신 뒤, 나온 값으로 누적합계를 계산해보시면 될듯 합니다.