학습노트
엑셀 2024 함수 마스터 챌린지 2일차
🔥 실습 예제과 함께 공부하는 모습을 함께 올려보세요!
(마우스 드래그 & 스크린샷+붙여넣기로 편리하게 그림을 넣을 수 있습니다)
○ 목차
2-1. LET
2-2. LAMBDA
2-3. TEXT
2-4. TEXTSPLIT
2-5. 배열계산
2-6. TAKE
2-7. DROP
2-8. HSTACK
○ 2-1. LET
수학의 a+b=c 처럼, a처럼 변수명, b처럼 변수명에 각각의 값을 주고, 최종 수식을 정의해서 처리하는 함수


○ 2-2. LAMBDA


○ 2-3. TEXT
○ 2-4. TEXTSPLIT

○ 2-5. LAMBDA 실습
○ 2-6. 배열 계산
*첫번째 조건:
, 두번쪠 조건 : 
*두개의 조건 모두 참일때를 찾으려면 두 조건 곱으로 "1"(true), "0"(false) 결과가 나옴
*둘 중하나만 참인 것을 찾는다면, "+" 를 하면됨.

○ 2-7. TAKE

○ 2-8. DROP
○ 2-9. HSTACK


○ 2-10. HSTACK으로 여러 sheet합치기
○ 2-11. 실시간 보고서
(마우스 드래그 & 스크린샷+붙여넣기로 편리하게 그림을 넣을 수 있습니다)
○ 목차
2-1. LET
2-2. LAMBDA
2-3. TEXT
2-4. TEXTSPLIT
2-5. 배열계산
2-6. TAKE
2-7. DROP
2-8. HSTACK
○ 2-1. LET
수학의 a+b=c 처럼, a처럼 변수명, b처럼 변수명에 각각의 값을 주고, 최종 수식을 정의해서 처리하는 함수
○ 2-2. LAMBDA
- 나만의 함수를 만들고 싶을 때 사용하는 함수
- 만들때, 이름 편집 창에 새로운 함수명을 만들어 주면됨.
- LAMBDA 함수에 전달 될 인수를 정의하고 해당 인수를 통해서 최종 출력할 수식을 정의한다.
- MID함수는 문자열에서 특정 위치부터 범위의 문자 출출
- ISODD는 해당 값이 홀수 인지 check
- 아래 그림에는 주민번호가 인자가 됨. 범위를 지정해서 전달 할 수 있음.
○ 2-3. TEXT
- 값을 원하는 형식으로 바꿔주는 함수 임.
- LAMBDA 함수를 이용하여 지정된 TEXT 형식을 만드는 나만의 함수를 만들수도 있음.
○ 2-4. TEXTSPLIT
- 문자를 나눌때 사용되는 함수이며, TEXTJOIN (문자 합치는 함수)와 함께 사용하면 더욱 강력함.
- 문자열에 곱하기 *1을 하면 숫자가 될 수 없으므로 error가 날것이기 IFERROR 함수를 이용하여 곱하기 *1을 한것은 숫자로 하고 아닌 경우는 문자로 그대로 유지하고, sort함수를 이용하여 2번째 열 기준 오름 차순으로 진행
○ 2-5. LAMBDA 실습
- 원하는 종목 코드를 넣으면 주식 차트를 가져오는 함수도 만들어보자.
○ 2-6. 배열 계산
*첫번째 조건:
*두개의 조건 모두 참일때를 찾으려면 두 조건 곱으로 "1"(true), "0"(false) 결과가 나옴
*둘 중하나만 참인 것을 찾는다면, "+" 를 하면됨.
- 이러한 배열의 참, 거짓 조건을 바탕으로 filter 함수와 같이 사용하면 여러 조건을 동시 만족하는 것을 찾아낼수 있다.
○ 2-7. TAKE
- 범위에서 행 또는 열에서 추출할 개수를 정의하는 함수
- 아래 B10:D19 범위에서 3열 기준으로 내림차순으로 해서 sorting후에 상위 3개 행만 가져옴.
- 우선 UNIQUE 함수로 가지고 "데이터유효성검사" 중 목록을 선택해서 회의실 목록을 만듦
- 여기서도 2개의 조건(배열계산)을 만족하는 것을 먼저 찾아야 함.
- fiter를 통해서 J10:K39범위에서 L열(회의실)이 본회의실이면서,J열에 있는 날짜가 N8(25.5.30일)보다 크거나 같은, 즉 이후 날짜인 것을 먼저 찾는다.
- 이후 sort 함수로 1열(날짜) 기준으로 오름차순으로 정렬한다.
- TAKE함수로 5개 열만 취한다.
○ 2-8. DROP
- drop 은 take와 반대로 떨어뜨린다. 지운다고 보면된다.
- 우선 drop으로 맨 밑에 평균을 제거
- 해당 배열기준으로 sort하는데, 이때 열은 점수열(2번째), 내림차순으로 정렬하고,
- 다시 drop으로 상위점수 2개를 제거
- 다시 drop으로 하위점수 2개를 제거
○ 2-9. HSTACK
- 여러 범위로 나눠진 것을 하나로 합침.
- let/lambda 종합 버전..
- 복잡해 보인다.
- 크게 보면, =LAMBDA(구분, 금액, 수식)
- 구분, 금액이 전달되어야할 인자(즉, 범위, 또는 cell들)
- 수식은 LET 함수로 구성 시켰다.
- LET (a, a_value, b, b_value, ..., 수식)
- 여기서는 구분범위 (변수) = 구분(값), 금액범위(변수) = 금액(값), 구분목록(변수) = UNIQUE(구분범위)(값), 집계범위(변수) = SUMIF(구분범위, 구분목록, 금액범위)(값), HSTACK(구분목록,집계범위) (수식) 형태이다.
- 즉, LET형태 그대로 가져왔다.
- LAMBDA 함수를 만들었음.
○ 2-10. HSTACK으로 여러 sheet합치기
- VSTACK처럼, HSTACK도 여러 sheet를 합칠수 있음.
- 1~4월 sheet의 열 내용을 합쳐서 하나로 만들어 주고 sheet 범위 1~4월에서 4월 바깥으로 빼면 같이 해당 열이 사라짐.
- 예를 들어 3월 sheet를 4월달 sheet 뒤로 놓으면 합쳐진 범위에는 1,2,4월만 보이게 됨.
○ 2-11. 실시간 보고서
- 원본 data에서 목록을 (UNIQUE) 만들고 선택한 "지점"을 기준으로 filter를 이용하여 해당 지점의 data만 가져오게 변경함.
- 이전에 만들었던 함수를 이용하여 범위를 넘겨 줘야 함.
- 구분과 매출액 계산을 위해서 LAMBDA함수의 인자로 범위를 넘겨야 하는데(자동으로 동적 범위를 전달하려면 직접 범위를 지정하기 보다는 동적으로 범위를 전달 할 수 있게 index함수를 이용해야 한다.
- 단, CHOOSECOLS 를 인자로 넘기면 array (배열)을 넘기게 되므로 MYREPORT 함수(LAMBDA) 인자가 형식에 맞지 않으므로 주의 해야 한다.
댓글 0