
Jump Links
The DROP Syntax
Examples: The DROP Function in Use
Using DROP With Other Functions
하나의 강력하지만 자주 간과되는 참조 함수인 DROP 함수는 원본 데이터는 그대로 두고 결과(복제본)에서 원하는 만큼의 행 또는 열을 제거할 때 매우 편리합니다. 이 가이드는 초보자부터 실무 사용자까지 모두 따라할 수 있게, 개념 설명, 예제, 모범 사례, 대안 및 실행 체크리스트를 포함합니다.

Microsoft 365 Personal
OS
Windows, macOS, iPhone, iPad, Android
Free trial
1 month
Microsoft 365에는 Word, Excel, PowerPoint와 같은 Office 앱, 최대 5대 장치에서의 사용 권한, OneDrive 1TB 저장소 등이 포함됩니다.
$100 at Microsoft
Expand
Collapse
DROP 구문
Excel의 DROP 함수는 세 개의 인수를 사용합니다:
=DROP(a,b,c)여기서
- a는 행 또는 열을 제거하고자 하는 원본 배열입니다.
- b는 제거할 행의 수입니다.
- c는 제거할 열의 수입니다.
기본 규칙과 동작 방식:
- 인수 a는 필수이며, b나 c 중 적어도 하나는 지정해야 합니다. 둘 다 비워두면 오류가 발생합니다.
- b와 c가 양수이면 각각 배열의 위(첫 행) 또는 왼쪽(첫 열)에서 제거합니다. 음수이면 아래(마지막 행) 또는 오른쪽(마지막 열)에서 제거합니다.
- b나 c에 배열에 담긴 행(또는 열) 수를 초과하는 값을 입력하면 CALC! 오류가 반환됩니다.
- DROP은 동적 배열 함수이므로 결과는 수식이 입력된 셀에 인접한 빈 셀들로 자동 확장(스필링)됩니다. 표(Table) 내 셀에서는 동적 배열이 스필되지 않으므로 일반 셀에 수식을 입력해야 합니다.
중요: DROP 결과를 표(Table) 내부에 직접 넣을 수 없습니다. 표 바깥의 일반 셀에 수식을 넣어야 스필이 정상 작동합니다.
사용 예제 전제 데이터
예제에서 사용할 테이블은 학생 ID(열 A), 성별(열 B), 반(열 C), 점수(열 D)를 포함합니다.

이 가이드를 따라하려면 예제 통합 문서를 다운로드해 각 연습에 사용된 워크시트 탭을 열어보세요. 표 구조(테이블 형식)를 사용하면 새 행이 추가되어도 구조화된 참조가 자동으로 반영되므로 범위 기반 예제보다 관리가 더 쉽습니다.
DROP 함수 실전 예제
아래 각 연습(Exercise)은 원본 문서의 예시를 한국어로 재구성한 것입니다. 각 예제는 단계별 설명, 수식, 그리고 결과 해석을 포함합니다.
연습 1: 배열의 위(상단)에서 행 제거하기
목표: 상위 10위를 제외한 학생 목록을 새로 만들고 싶습니다. 먼저 점수 열에서 필터 버튼을 클릭해 내림차순(가장 큰 값 → 작은 값)으로 정렬합니다.

정렬을 수식으로 처리하려면 SORT를 중첩할 수 있지만, 우선은 표의 필터 버튼 정렬로 설명을 간단히 합니다.
상위 10행을 제거해 복제본을 만드는 한 가지 방법은 b를 하드코딩하는 것입니다:
=DROP(T_Stud,10)여기서 T_Stud는 원본 테이블이고 10은 제거할 행의 수입니다(양수이므로 상단에서 제거). c는 생략되어 모든 열이 반환됩니다.

하드코딩의 단점은 유연성이 떨어진다는 점입니다. 이를 개선하려면 제거할 수를 셀에 입력하고 참조하면 됩니다:
=DROP(T_Stud,H1)
이제 H1 값을 바꾸면 수식 수정 없이 제거할 행의 수를 동적으로 변경할 수 있습니다.

연습 2: 배열의 아래(하단)에서 행 제거하기
원리는 동일하지만 b에 음수를 사용합니다. 예: 하위 10위를 제외한 목록을 만들려면 데이터 정렬 후 H1에 10을 입력하고:
=DROP(T_Stud2,-H1)마이너스 부호는 참조된 값의 부호를 반전시켜 하단에서 제거하도록 합니다.

마이너스는 수식 내에서 직접 쓰거나, 값을 음수로 입력하거나, 다른 셀과 연결해 만들 수 있습니다.
연습 3: 배열의 왼쪽에서 열 제거하기
데이터를 익명화하려고 첫 번째 열(ID 같은)를 제거하려면 b를 비워두고 c에 양수를 넣습니다:
=DROP(T_Stud3,,1)
인수 b를 생략하고 쉼표(,)만 넣은 점에 주의하세요.
연습 4: 배열의 오른쪽에서 열 제거하기
점수 열을 제외하고 학생 명부, 성별, 반만 보고 싶다면 오른쪽 끝 열을 제거합니다(음수 사용):
=DROP(T_Stud4,,-1)
오른쪽 끝에서의 제거는 데이터 오른쪽 끝에 새 열이 추가되면 그 열도 제거 대상이 되므로, 동적 구조를 염두에 두어야 합니다.
연습 5: 행과 열을 동시에 제거하기
행과 열을 동시에 제거할 수 있습니다. 예: 하위 10명을 제외하고 학생 ID와 성별만 남기려면:
=DROP(T_Stud5,-H1,-2)여기서 -H1은 하단 10행을 제거하고 -2는 오른쪽에서 두 개의 열을 제거합니다.

다른 함수와 함께 사용하기
DROP은 단독으로도 유용하지만, SORT, VSTACK, HSTACK, CHOOSECOLS, CHOOSEROWS 등 동적 배열 함수들과 결합하면 더 강력합니다.
연습 6: SORT와 DROP 결합하기
원본 정렬 방식과 상관없이 결과를 항상 점수별로 정렬되게 하려면 SORT를 중첩합니다. 예:
=DROP(SORT(T_Stud6,4,-1),-H1,1)- 4는 네 번째 열(Score)로 정렬하라는 의미입니다.
- -1은 내림차순(큰→작은) 정렬을 의미합니다.
- -H1은 하단에서 H1(10)개 행을 제거합니다.
- 1은 첫 번째 열을 제거합니다.
결과는 원본 테이블이 어떤 기준으로 정렬되어 있든 항상 점수 기준으로 정렬됩니다.

연습 7: VSTACK과 결합해 여러 테이블 합치기
반별로 분리된 테이블(T_Blue, T_Green, T_Yellow)이 있을 때 이들을 합쳐 상위 10위를 제외한 전체 학생 목록을 얻으려면 VSTACK을 사용합니다:
=DROP(SORT(VSTACK(T_Blue,T_Green,T_Yellow),3,-1),G1)- VSTACK은 여러 테이블을 수직으로 이어붙입니다.
- 3은 세 번째 열(Score) 기준 정렬입니다.
- -1은 내림차순 정렬입니다.
- G1의 값(10)을 양수로 사용해 상단 10개를 제거합니다.

수평으로 이어붙인 경우에는 HSTACK을 사용하고, 그 결과에 대해 열 단위로 DROP을 적용합니다.
연습 8: 선택한 열만 가져온 뒤 DROP 적용하기
CHOOSECOLS를 사용하면 특정 열만 추출한 뒤 DROP으로 행을 잘라낼 수 있습니다. 예: 점수 기준으로 정렬한 뒤 반(Class) 열만 뽑고 하단 10개를 제외하려면:
=DROP(CHOOSECOLS(SORT(T_Stud8,4,-1),3),-I1)- SORT(T_Stud8,4,-1): 네 번째 열(점수) 내림차순 정렬
- CHOOSECOLS(…,3): 세 번째 열(반)만 선택
- DROP(…,-I1): I1의 값(10)을 음수로 사용해 하단 10행 제거

참고: CHOOSECOLS를 DROP에 중첩할 때는 행 수(b)만 지정할 수 있고, CHOOSEROWS를 DROP에 중첩하면 열 수(c)만 지정할 수 있습니다. 이는 두 함수가 서로 충돌되는 정보를 Excel에 전달하지 않도록 하기 위한 제한입니다.
DROP과 반대되는 함수는 TAKE입니다. TAKE는 결과에 포함할 행 또는 열의 수를 지정해 유지합니다. 두 함수의 구문은 같으므로 하나를 익히면 다른 하나로 쉽게 적응할 수 있습니다.
언제 DROP을 사용하면 안 되는가 — 실패 조건 및 대안
- 배열 내부의 중앙 부분(양쪽 끝이 아닌 중간의 행/열)을 잘라내려면 DROP만으로는 불가능합니다. 이 경우 INDEX/SEQUENCE,TOCOL/TAKE/CHOOSECOLS의 조합 또는 FILTER를 고려하세요.
- 동적 배열이 표 내부로 스필될 수 없으므로 결과를 표 내부에 넣으려는 시나리오는 실패합니다. 이때는 표의 외부 영역으로 결과를 스필시키거나, 수동으로 결과를 복사해 표로 바꿔 넣어야 합니다.
- b나 c에 입력한 값이 배열 크기를 초과하면 CALC! 오류가 발생합니다. 이 경우 MIN 또는 ROWS/COLUMNS로 안전하게 제어하세요. 예: =DROP(T,MIN(H1,ROWS(T)))
- 오래된 Excel(예: Office 2019, Office 2016)에서는 DROP 함수를 지원하지 않습니다. 이 경우 전통적 INDEX/OFFSET 조합, FILTER 또는 VBA로 유사한 동작을 구현해야 합니다.
대안 접근법 요약
- TAKE: 필요한 행/열만 유지할 때 사용. 문법은 DROP과 동일.
- FILTER: 조건 기반 필터링이 필요할 때. 예: 점수 >= 80인 행만 유지.
- INDEX + SEQUENCE: 더 복잡한 잘라내기(중간 부분 추출 등)나 비표준 슬라이스를 구현할 때 유용.
- OFFSET(구식) + INDEX: 동적 참조가 필요하지만 최신 동적 배열을 사용할 수 없는 환경에서 사용.
- VBA/Power Query: 반복적·대용량 데이터 변형, 자동화 워크플로우 구축 시 권장.
정신 모델과 휴리스틱
- 경계만 제거한다: DROP은 항상 ‘배열의 경계(edge)’에서만 작동합니다. 내부에서 잘라내려면 다른 도구를 사용하세요.
- 부호는 방향: 양수는 위/왼쪽에서 제거, 음수는 아래/오른쪽에서 제거.
- 스필을 고려하세요: 수식이 들어가는 셀 오른쪽/아래가 비어 있어야 합니다.
- 안전한 값 사용: 사용자가 입력한 숫자(H1 등)는 배열 크기를 초과할 수 있으니 MIN/MAX로 보호합니다.
예제별 체크리스트 (역할별)
Analyst(분석가):
- 원본 데이터가 표(Table)인지 확인
- 제거할 행/열 수를 셀로 분리해 재사용 가능하게 만들기
- 스필 영역이 빈 셀인지 확인
- 결과가 다른 분석에 사용될 경우 SORT를 중첩해 정렬 기준 고정
Data Steward(데이터 관리자):
- 익명화가 필요한 컬럼을 목록화
- DROP/CHOOSECOLS 조합으로 민감 정보 제거 테스트
- 변경 이력이 필요하면 원본 워크시트 백업
Teacher/Instructor(교육자):
- 학생용 예제 파일 제공(수정 불가) 및 연습 지침 포함
- 실습용 셀(H1 등)에 다양한 케이스 값 제공
표준 운영 절차(간단한 SOP): 학생 데이터 익명화
- 원본 테이블을 검사해 민감 컬럼(예: ID, 이름) 식별.
- H1에 제거할 상위/하위 개수 입력(예: 10).
- 익명화 수식 작성: =DROP(SORT(원본,점수열,-1),-H1,1) — 하단 H1개 제거 및 첫 열(ID) 제거.
- 결과 스필 영역을 확인한 뒤 값 붙여넣기(필요 시)로 고정.
- 결과 복사본을 별도 시트에 저장 및 백업.
테스트 케이스 및 수용 기준
- 수식에 음수와 양수 입력 시 모두 올바른 방향(위/아래, 왼쪽/오른쪽)으로 제거되는지 확인.
- H1 값이 0일 때 원본 전체가 반환되는지 확인.
- H1 값이 배열의 크기보다 클 때 CALC!이 발생하는지 확인(예외 처리 권장).
- 표(table) 내부에서 수식을 입력했을 때 스필되지 않고 오류가 되는지 확인.
호환성 및 마이그레이션 팁
- DROP은 Microsoft 365(데스크톱), Excel for the web, Excel 모바일 앱에서만 지원됩니다.
- 기존 Office 2019/2016 사용자와 협업 시에는 결과를 값으로 붙여넣거나, 호환용 스크립트(VBA) 또는 Power Query를 사용해 동작을 재현하세요.
- 공유 문서(OneDrive/SharePoint)의 경우 동적 배열 스필 동작이 웹/데스크톱에서 약간 다르게 보일 수 있으므로 결과를 검증하세요.
보안 및 개인정보 유의사항
- DROP 자체는 데이터 삭제가 아닌 복제본에서의 제거입니다. 원본 테이블은 변경되지 않습니다. 민감 정보를 완전히 제거하려면 원본에서도 해당 컬럼을 삭제하거나 암호화해야 합니다.
- GDPR 등 규정상 식별 가능한 개인 데이터를 외부로 공유하기 전에 반드시 익명화(또는 가명화)를 수행하고 접근권한을 제한하세요.
작은 방법론: DROP 기반 데이터 익명화 단계(간단한 체크리스트)
- 원본을 복제한 새 시트를 생성.
- 필요한 정렬 기준을 결정하고 SORT로 정렬(중첩 권장).
- CHOOSECOLS로 민감 열 제거 혹은 DROP으로 경계 열 제거.
- 결과가 의도대로 나오는지 샘플 검사.
- 결과를 값으로 고정하고 원본 접근을 제한.
의사결정 흐름도
flowchart TD
A[시작: 익명화/자르기 필요?] --> B{경계에서 제거 가능한가?}
B -- 예 --> C[DROP 사용]
B -- 아니오 --> D{조건 기반인가?}
D -- 예 --> E[FILTER 사용]
D -- 아니오 --> F[INDEX+SEQUENCE 또는 Power Query]
C --> G{정렬 필요?}
G -- 예 --> H[SORT 중첩]
G -- 아니오 --> I[그대로 스필]
H --> I
E --> I
F --> I
I --> J[결과 검증 및 고정]
J --> K[종료]비교 행렬(간단)
- DROP: 경계(위/아래, 좌/우) 제거, 동적 배열, 쉽고 직관적
- TAKE: 유지할 행/열 수 지정, DROP의 반대 개념
- FILTER: 조건 기반 필터링(예: 점수 >= 80)
- VSTACK/HSTACK: 테이블 결합 후 DROP으로 전처리 가능
- INDEX+SEQUENCE: 중간 슬라이스나 복잡한 패턴에 적합
1줄 용어집
- 스필(Spilling): 동적 배열이 수식 셀에서 인접한 빈 셀로 결과를 자동 확장하는 동작.
팩트 박스(핵심 숫자와 포인트)
- 사용 가능 버전: Microsoft 365(데스크톱/웹/모바일)
- 주요 인수: a(배열, 필수), b(제거할 행 수), c(제거할 열 수)
- 방향 규칙: 양수 = 위/왼쪽에서 제거, 음수 = 아래/오른쪽에서 제거
예시 수식 모음(체크리스트형 스니펫)
- 상단 N개 제거: =DROP(Table,N)
- 하단 N개 제거: =DROP(Table,-N)
- 왼쪽 M개 제거: =DROP(Table,,M)
- 오른쪽 M개 제거: =DROP(Table,,-M)
- 결합 예: =DROP(SORT(VSTACK(T1,T2),3,-1),G1)
엣지 케이스 갤러리
- 배열의 행/열 수와 동일한 값을 입력하면 결과는 빈 배열이 됩니다(또는 CALC! 오류).
- 표 내부에 수식을 넣으면 스필되지 않아 오류 또는 잘못된 표시가 나옵니다.
- 입력값이 음수인데 절댓값이 배열보다 크면 CALC! 오류.
요약
- DROP은 배열의 경계(상단/하단/좌/우)에서 원하는 만큼 행/열을 제거하는 동적 배열 함수입니다.
- SORT, VSTACK, CHOOSECOLS 등과 결합하면 데이터 정리, 익명화, 여러 테이블 통합 등 다양한 실무 작업에 활용할 수 있습니다.
- 지원은 Microsoft 365 계열에서만 가능하므로 하위 버전에서는 대체 기법을 사용해야 합니다.
핵심 요약:
- 경계 기반 슬라이싱에 탁월
- 동적 배열 특성(스필)을 이해하고 사용
- TAKE/FILTER/INDEX+SEQUENCE 등 대안 개념 숙지 필요
감사합니다. 더 많은 샘플 워크북이나 특정 케이스(예: 특정 열이 늘어나는 동적 시나리오)에 맞춘 수식 최적화를 원하시면 알려주세요.