본문으로 바로가기

Microsoft 365 배열함수 기초 이론 (2단계)

달의이성
달의이성
조회수 32
요약

핵심 배열함수 10개 완전 가이드

🎯 학습 우선순위 (난이도별)

⭐ 초급 (즉시 활용 가능)

  1. FILTER - 조건부 데이터 추출

  2. SORT - 데이터 정렬

  3. UNIQUE - 중복 제거

  4. SEQUENCE - 연속 숫자 생성

⭐⭐ 중급 (조합 활용)

  1. XLOOKUP - 향상된 찾기 함수

  2. HSTACK/VSTACK - 배열 결합

  3. TAKE/DROP - 배열 분할

⭐⭐⭐ 고급 (복합 활용)

  1. BYROW/BYCOL - 행/열별 연산

  2. MAP - 사용자 정의 함수 적용

  3. LAMBDA - 사용자 정의 함수 생성


1️⃣ FILTER 함수 - 조건부 데이터 추출

기본 문법

=FILTER(배열, 조건, [빈값시_결과])

실습 예제

예제 1: 단일 조건 필터링

// 급여가 4000 이상인 직원만 추출
F1: =FILTER(A1:D11, C2:C11>=4000)

예제 2: 다중 조건 필터링 (AND)

// 개발부서이면서 급여가 4000 이상인 직원
F1: =FILTER(A1:D11, (B2:B11="개발")*(C2:C11>=4000))

예제 3: 다중 조건 필터링 (OR)

// 영업부서이거나 급여가 4500 이상인 직원
F1: =FILTER(A1:D11, (B2:B11="영업")+(C2:C11>=4500))

예제 4: 빈 결과 처리

// 조건에 맞는 데이터가 없을 때 "해당 없음" 표시
F1: =FILTER(A1:D11, C2:C11>=5000, "해당 없음")

💡 FILTER 실무 활용 팁

  • * 연산자: AND 조건

  • + 연산자: OR 조건

  • 빈 결과 처리로 에러 방지

  • 와일드카드: FILTER(A:C, ISNUMBER(SEARCH("김*", A:A)))


2️⃣ SORT 함수 - 데이터 정렬

기본 문법

=SORT(배열, [정렬_인덱스], [정렬_순서], [기준])

실습 예제

예제 1: 단일 열 정렬

// 급여 기준 내림차순 정렬
F1: =SORT(A1:D11, 3, -1)

예제 2: 다중 열 정렬

// 부서별로 먼저 정렬, 그 다음 급여 내림차순
F1: =SORT(A1:D11, {2,3}, {1,-1})

예제 3: 행 기준 정렬

// 데이터를 가로로 정렬
F1: =SORT(A1:D11, 1, 1, TRUE)

💡 SORT 실무 활용 팁

  • 정렬 순서: 1(오름차순), -1(내림차순)

  • 다중 정렬: {1,2}, {순서1, 순서2}

  • 행 정렬: 마지막 인수를 TRUE로 설정


3️⃣ UNIQUE 함수 - 중복 제거

기본 문법

=UNIQUE(배열, [by_col], [occurs_once])

실습 예제

예제 1: 부서 목록 중복 제거

F1: =UNIQUE(B2:B11)

예제 2: 전체 행에서 중복 제거

// 이름과 부서 조합으로 중복 제거
F1: =UNIQUE(A2:B11)

예제 3: 한 번만 나타나는 값

// 부서 중에서 딱 한 번만 나타나는 부서
F1: =UNIQUE(B2:B11, FALSE, TRUE)

💡 UNIQUE 실무 활용 팁

  • by_col=TRUE: 열 기준 중복 제거

  • occurs_once=TRUE: 유일한 값만 반환

  • SORT와 조합: =SORT(UNIQUE(B2:B11))


4️⃣ SEQUENCE 함수 - 연속 숫자 생성

기본 문법

=SEQUENCE(행수, [열수], [시작값], [증가값])

실습 예제

예제 1: 기본 연속 숫자

// 1부터 10까지 세로로
F1: =SEQUENCE(10)

예제 2: 2D 배열 생성

// 3행 4열의 연속 숫자 테이블
F1: =SEQUENCE(3, 4)

예제 3: 사용자 정의 시작값과 증가값

// 5부터 시작해서 2씩 증가하는 10개 숫자
F1: =SEQUENCE(10, 1, 5, 2)

예제 4: 실무 응용 - 월별 날짜 생성

// 2024년 1월의 모든 날짜
F1: =DATE(2024,1,SEQUENCE(31))

💡 SEQUENCE 실무 활용 팁

  • 자동 번호 매기기: =SEQUENCE(ROWS(A2:A11))

  • 날짜 범위 생성: =DATE(2024,1,1)+SEQUENCE(365)-1

  • 테스트 데이터 생성에 매우 유용


5️⃣ XLOOKUP 함수 - 향상된 찾기

기본 문법

=XLOOKUP(찾을값, 찾을범위, 반환범위, [없을때값], [일치모드], [검색모드])

실습 예제

예제 1: 기본 찾기

// 김철수의 급여 찾기
F1: =XLOOKUP("김철수", A2:A11, C2:C11)

예제 2: 여러 열 반환

// 김철수의 부서와 급여 모두 반환
F1: =XLOOKUP("김철수", A2:A11, B2:D11)

예제 3: 근사 일치 찾기

// 급여 3500 이상인 첫 번째 직원
F1: =XLOOKUP(3500, C2:C11, A2:A11, "없음", 1)

💡 XLOOKUP vs VLOOKUP 장점

  • 왼쪽 방향 찾기 가능

  • 여러 열 동시 반환

  • 에러 처리 내장

  • 근사/정확 일치 옵션


✅ 2단계 체크포인트

각 함수별로 다음을 실습해보세요:

실습 과제

  1. FILTER: 평가가 'A'인 직원의 모든 정보 추출

  2. SORT: 부서별, 급여 내림차순으로 정렬

  3. UNIQUE: 각 부서별 평가 등급 중복 제거 목록

  4. SEQUENCE: 직원 번호 자동 생성 (1001부터 시작)

  5. XLOOKUP: 부서명으로 해당 부서 평균 급여 계산

성공 기준

  • 각 함수를 에러 없이 작성할 수 있음

  • 다양한 옵션을 활용할 수 있음

  • 실무 상황에 맞게 응용할 수 있음

🎯 다음 단계: 함수들을 조합하여 더 복잡한 분석 수행