반응형

vlookup 15

파워 쿼리와 VLookup 비교(1)

1. 문제 아래와 같은 매출자료를 바탕으로 여러 가지 검색 및 집계를 해보겠습니다. 2.Vlookup 함수의 장점 및 한계 가. 장, 단점 VLookup 함수는 찾을 값을 빨리 찾아주는 기능이 있는데, 찾고 자 하는 값이 찾을 범위의 첫 번째 열에 있어야 하고, 반환받을 값은 인덱스가 +여야지 -면, 다시 말해 찾을 범위의 첫 번째 열의 왼쪽에 있으면 안 됩니다. 그리고, 중복된 값이 있어도 첫 번째 값만 반환해 주는 한계가 있습니다. 나. VLookup 함수를 이용한 예시 (1) A지점에 해당하는 매출일자 및 매출액 찾기 (가) 매출일자 찾기 E2셀에 A지점이라고 입력하고, F2셀과 G2셀에 A지점에 해당하는 매출일자와 매출액을 구해보겠습니다. 먼저 매출일자를 구하는 수식은 아래와 같습니다. =VLOO..

한글이 아닌 엑셀로 하는 메일 머지(1)

1. 문제고지서 서식은 한 장이고, 인쇄할 내용을 아래 명단 시트에서 순서대로 찾아서 인쇄하고자 할 때 먼저 생각나는 것이 워드나 한글의 메일 머지 기능입니다. 그러나, 여기서는 엑셀의 매크로로 구현하고자 하는 것입니다. 인쇄할 내용을 채우는 방법이 두 가지가 있습니다. 이름만 입력하면 나머지 내용은 수식으로 가져오는 방법, 이름뿐만 아니라 나머지 내용까지 매크로로 처리하는 방법인데, 한 가지씩 알아보겠습니다. 2. 해법 1 : 이름만 입력하고 나머지는 수식으로 가져오는 방법 가. 연번별로 이름에 순번 부여하기(1) 로직 연번을 기준으로 인쇄하는데, 연번에 동일인이 있다면 같은 고지서에 인쇄하고, 다른 사람이라면 별도의 고지서에 인쇄해야 합니다. 이를 위해서는 고지서 발행 기준인 순번과 동일인여부 순번 ..

EXCEL - VBA 2024.03.27

근무표 유형 변경하기(365 이전 버전용)

1. 문제 아래와 같이 직원별, 일자별 근무 현황이 있는데, 근무 유형별, 일자별로 누가 근무했는지와 시간외근무를 오른쪽 '시간외근무 유형'에 따라 괄호 안에 시간수를 입력해서 표시하려고 합니다. 원 데이터는 다른 시트에 있는건데 이해와 설명의 편의를 위해 한 개 시트에 모았습니다. 2. 해결 방안 365 버전용 함수를 이용하는 방법과 이전 버전용 함수를 이용하는 두 가지 방법에 대해 알아보겠습니다. 가. 365 이전 버전 (1) d1, d2, n1, n2 유형에 따라 일자별 근무자 및 괄호안에 숫자 표시 일자와 유형 2가지 조건을 만족해야 하므로 두가지 조건을 * 연산자로 연결하면 =($B$3:$H$8=K$2)*($B$2:$H$2=$J3)이 되는데, #분산!라고 표시되고, 6*7의 크기로 테두리가 쳐집..

Excel 2024.03.08

자료 형태가 다른 것 VLookup으로 검색하기

좌우 데이터가 좀 달라야 하는데 동일하게 만들었습니다. 다른 점은 형식이 왼쪽은 주계좌 및 서브계좌에 -이 있고, 오른쪽의 날짜가 날짜 형식이 아니라 문자로 되어 있어 변환이 필요한 상황입니다. 데이터 건수가 17951로 매우 큽니다. 1. 서브계좌 구하기 이와 같은 경우에 사용하는 함수가 VLookup입니다. 주계좌의 형식이 다르기 때문에 형식을 통일해야 하는데, 오른쪽 검색 범위는 바꿀 수 없으니 왼쪽 것을 Substitute 함수를 이용해 바꾸면 =substitute(a4,"-","")이 됩니다. 다시 말해 하이픈(-)을 공백으로 바꾸는 것입니다. 이제 Vlookup 함수와 결합하면 =vlookup(substitute(a4,"-",""),$a$4:$i$17951,2,0)이 됩니다. 그런데, 이상하게..

EXCEL - VBA 2023.11.20

여러 가지 조건을 만족하는 값을 찾을 때(4) - 데이터를 결합한 열 생성 후 Vlookup

사용자 정의 함수는 복잡한 수식을 간단하게 만드는 편리함은 있는데, 내장 함수에 비해 속도가 너무 느립니다. 따라서, 열을 결합한 값을 찾을 때 Vlookup함수로는 안되니까, 새로운 열에 열을 결합한 데이터를 추가한 후 Vlookup함수를 실행하는 것이 좋습니다. 다만 이렇게 하면 보기에 안좋은 열이 생기는 것이 단점입니다. 위 화면은 나라별, 연도별 인구수를 오른쪽 표에서 찾아서 C열에 표시하려고 하는 것입니다. 1. 문제점 VLookup 함수는 찾을 값은 찾을 범위의 첫번째 열에서 찾기 때문에 =VLOOKUP(A2&B2,$F$2:$F$7&$G$2:$G$7&$H$2:$H$7,3,0)라고 입력해도 첫번째 열인 F열에서 A2셀과 B2셀을 결합한 값을 찾기 때문에 #N/A 에러가 발생한 것입니다. 2. 해..

Excel 2023.07.28

여러 가지 조건을 만족하는 값을 찾을 때(2-1) - 사용자 정의 함수(1)

XLookup함수가 뛰어나기는 하지만 Excel 2021 버전이상에서만 사용할 수 있기 때문에 사용자 정의 함수를 만들어 사용하려고 합니다. 만들면서 한 열만 지정하는 경우는 범위로 되고, 열을 &연산자로 연결하면 배열로 돼서 이를 해결하느라 고생 좀 했습니다. 사용자 정의 함수는 추가기능 파일, 확장자 xla(m) 파일에 모아 놓고 사용하는 것이 좋습니다. 그렇지만 설명이므로 모듈에 만드는 것을 기준으로 설명하겠습니다. 1. VBA 에디터 실행 및 모듈 삽입 개발도구 탭이 없다면 파일 - 옵션에서 Excel 옵션 창을 연 후 리본 사용자 지정 메뉴를 선택하고, 개발도구 왼쪽에 체크해야 합니다. 개발 도구 탭을 누른 후 Visual Basic 명령을 눌러 Visual Basic 에디터를 엽니다. 그리고,..

EXCEL - VBA 2023.07.25

여러 가지 조건을 만족하는 값을 찾을 때(1) - VLookup, Index+Match, XLookup함수

1. VLookup 함수의 한계 VLookup 함수의 구문은 VLOOKUP(찾을 값, 표 범위, 몇 번째 컬럼, [유사일치여부]) 인데, 네번째 인수는 선택적 인수이지만 생략하면 유사값을 찾아 반환하므로 정확한 값을 찾도록 0을 입력하거나 False를 선택해야 합니다. 아래와 같이 나라별, 연도별 인구수를 구하고자 할 때 나라와 연도 2가지 조건을 만족해야 하는데 VLookup함수로는 에러가 발생해서 C2셀의 수식 : =VLOOKUP(A2&B2,$F$2:$F$7&$G$2:$G$7&$H$2:$H$7,3,0) C3셀의 수식 : =VLOOKUP(A3&B3,$F$2:$H$7,3,0) 2. Index + Match 함수 Index와 Match 함수를 결합해서 구해야 하며, 365버전이 아니라면 Shift+Ctrl..

Excel 2023.07.24

파워 쿼리와 Vlookup, Index+Match 함수 비교(1)

엑셀에서 자주 사용하는 함수로는 Vlookup과 Index, Macth함수가 있는데, 자꾸 사용하다 보면 익숙해지지만, 처음에는 어떻게 사용하는지 막막한 함수입니다. 엑셀을 사용하기 전에는 간단한 사칙연산과 합계, 평균 등만을 사용하다가 Vlookup함수의 인수로 4가지가 들어가야 한다는 것이 벽으로 다가옵니다. 이러한 것을 간단하게 사용할 수 있게 하는 것이 파워 쿼리의 쿼리 병합 기능입니다. 아래와 같이 일자별, 지점별 매출액 데이터가 있고, 두 번째는 지점별 지점장 데이터, 세 번째는 일자별, 지점별 인원수 데이터가 있다고 할 경우 지점별 지점장과 인원수를 구하려면 아래와 같이 Vlookup 또는 Index, Match함수를 사용해서 구해야 합니다. 1. 해당 지점의 지점장 알아내기 - Vlooku..

Vlookup함수 - 유사 일치

Vlookup 함수의 네번째 인수(range_lookup)는 1이면 유사 일치이고, 0이면 정확히 일치입니다. 정확히 일치하는 것은 쉬우므로 유사일치에 대해 사례를 들어 살펴보겠습니다. 1. 사례 1 가. 사례 분석 왼쪽에 일자별 제품별 판매가격이 있을 때 오른쪽 표에서 해당하는 판매가격을 찾는 것을 해보겠습니다. 왼쪽 표를 보면 A제품의 경우 2022-07-12부터 2022-12-14까지는 1,920원이고, 2022-12-25부터 2023-02-04까지는 2,075원, 2023-02-05부터는 2,085원이 적용됩니다. B제품의 경우는 3행에 하나뿐이 없으므로 2022-08-14까지는 적용될 가격이 없는 것이고, 2022-08-15부터는 2,010원이 적용됩니다. 찾는 것은 매입일에 해당하고, 제품명이..

Excel 2023.06.08

중간값에 해당하는 값이 2개일 때 2개 모두 표시하기

예제는 https://cafe.naver.com/excelmaster/217949에서 가져왔습니다. 중간값에 해당하는 월이 있다면 index와 match함수를 이용해 월을 구할 수 있는데, 2개일 경우는 보다 작은 값에 해당하는 월과 보다 큰 값에 해당하는 월을 가져와야 하므로 복잡합니다. 1. 일치하는 값이 1개일 때 해당하는 월 구하기 최솟값에 해당하는 월을 구하는 D4셀의 수식은 =INDEX($C$9:$C$20,MATCH(C4,$D$9:$D$20,0))로 C4셀과 일치하는 값을 $D$9:$D$20에서 찾는데 0을 인수로 줘서 정확히 일치하는 순번을 찾으므로 MATCH(C4,$D$9:$D$20,0)의 값은 2입니다. 따라서 =INDEX($C$9:$C$20,2)가 되므로 $C$9:$C$20에서 두 번째..

Excel 2023.05.30
반응형