책 내용 질문하기
366쪽 4번 판매단가 문제....
도서
2018 시나공 컴퓨터활용능력 1급 실기(엑셀, 액세스 2010 사용자용)
페이지
366
조회수
27
작성일
2018-11-14
작성자
탈퇴*원
첨부파일

고생이 많으십니다....

다름이 아니고 진짜 1도 모르겠는 문제가 있어서요. 366쪽 계산작업 4번 문제에 판매단가를 계산하라는데

표2에는 코드만 나와있는데 Hlookup 찾는 값에 갑자기 D10 판매수량써서 범위를 표2로 설정하는 것부터가 이해가 안됩니다.

암 걸릴 것 같습니다. 도움 부탁드립니다.

답변
2018-11-15 20:50:21

안녕하세요.

HLOOKUP(찾을 값, 범위, 행번호, 옵션)

:범위의 첫 번째 행에서 찾을값과 같은 데이터를 찾은 후 찾을 값이 있는 열에서 지정된 행 번호 위치에 있는 데이터를 반환합니다.

:찾을 값 D10

:범위 F2:I4

:행번호 : MATCH(LEFT(A10,1), {"다","나"},-1)+1

---

MATCH(찾을 값, 범위, 옵션)
: 범위에서 옵션을 적용하여 찾을 값과 같은 데이터를 찾아 그 위치에 대한 일련번호를 반환하는 함수입니다.

옵션 -1
: 옵션을 -1로 지정하면 찾을 값이 없을 경우 '찾을 값' 보다 큰 값 중에서 가장 작은 값을 찾습니다. 이때 범위는 반드시 내림차순으로 정렬되어야 합니다.

{"다", "나"}
: [표1]의 '상품코드'의 왼쪽 1글자는 "가, 나, 다" 중 하나인데 [표2] 코드표의 코드는 "다, 기타"입니다. 즉, "다"와 그 외의 코드로 구분하라는 의미이지요.

이런 경우 "다"만 정확히 찾고 나머지는 모두 "기타"로 처리해야 하는데 "다, 나, 기타, 가"로 내림차순 정렬되므로 이 방법을 이용할 수 없습니다.([표2]의 순서가 "다, 기타" 이므로 내림차순으로 판단한 것입니다.)

왜냐면, 내림차순이므로 '옵션'으로 -1을 사용해야하는데 "가"는 "기타"보다 작아 기타로 처리되지만, "나"는 "기타"보다 크므로 "다"로 처리됩니다.

이런 경우, 별도로 찾을 데이터가 있는 범위를 만들어 주면 됩니다.
가장 큰 "다"와 두 번째 큰 항목인 "나"를 두 번째로 하여 범위를 만들면 "다"를 제외한 모든 과목은 "나"로 처리됩니다. "나"가 "기타"역할을 하는 것이지요.

-----

MATCH(LEFT(A10,1), {"다","나"},-1) +1 에서 +1 을 하는 이유는

Hlookup 에서 사용한 범위는 F2:I4로 2~4 까지 3행이 범위로 지정되어 있는데
Match 에서 사용한 범위는 다, 기타로 2개이기 때문입니다.

그래야 다와 기타에 해당하는 값을 표시할 수 있습니다.

------

이렇게 MATCH 함수로 HLOOKUP의 행번호를 구하는 것입니다.

-----

문제가 상품코드와 판매수량에 따른 판매단가를 계산하는 것이므로

[표2] 코드표 에서 2행의 판매수량과 (다, 기타)의 상품 코드를 이용하는 것입니다.

HLOOKUP 함수에서 [D10]은 판매수량을 찾기위해 표시된 것입니다.

HLOOKUP(D10, F2:I4, MATCH()에서 반환된 행번호)은

판매수량[D10]을 범위 [F2:I4]의 첫 행인 [F2:I2]에서 찾아, 반환된 행번호 위치에 있는 데이터를 반환하게 됩니다.

설명이 복잡해졌습니다. 함수별로 이해하시면 될 것 같습니다.

좋은 하루 보내세요.

  • *
    2018-11-15 20:50:21

    안녕하세요.

    HLOOKUP(찾을 값, 범위, 행번호, 옵션)

    :범위의 첫 번째 행에서 찾을값과 같은 데이터를 찾은 후 찾을 값이 있는 열에서 지정된 행 번호 위치에 있는 데이터를 반환합니다.

    :찾을 값 D10

    :범위 F2:I4

    :행번호 : MATCH(LEFT(A10,1), {"다","나"},-1)+1

    ---

    MATCH(찾을 값, 범위, 옵션)
    : 범위에서 옵션을 적용하여 찾을 값과 같은 데이터를 찾아 그 위치에 대한 일련번호를 반환하는 함수입니다.

    옵션 -1
    : 옵션을 -1로 지정하면 찾을 값이 없을 경우 '찾을 값' 보다 큰 값 중에서 가장 작은 값을 찾습니다. 이때 범위는 반드시 내림차순으로 정렬되어야 합니다.

    {"다", "나"}
    : [표1]의 '상품코드'의 왼쪽 1글자는 "가, 나, 다" 중 하나인데 [표2] 코드표의 코드는 "다, 기타"입니다. 즉, "다"와 그 외의 코드로 구분하라는 의미이지요.

    이런 경우 "다"만 정확히 찾고 나머지는 모두 "기타"로 처리해야 하는데 "다, 나, 기타, 가"로 내림차순 정렬되므로 이 방법을 이용할 수 없습니다.([표2]의 순서가 "다, 기타" 이므로 내림차순으로 판단한 것입니다.)

    왜냐면, 내림차순이므로 '옵션'으로 -1을 사용해야하는데 "가"는 "기타"보다 작아 기타로 처리되지만, "나"는 "기타"보다 크므로 "다"로 처리됩니다.

    이런 경우, 별도로 찾을 데이터가 있는 범위를 만들어 주면 됩니다.
    가장 큰 "다"와 두 번째 큰 항목인 "나"를 두 번째로 하여 범위를 만들면 "다"를 제외한 모든 과목은 "나"로 처리됩니다. "나"가 "기타"역할을 하는 것이지요.

    -----

    MATCH(LEFT(A10,1), {"다","나"},-1) +1 에서 +1 을 하는 이유는

    Hlookup 에서 사용한 범위는 F2:I4로 2~4 까지 3행이 범위로 지정되어 있는데
    Match 에서 사용한 범위는 다, 기타로 2개이기 때문입니다.

    그래야 다와 기타에 해당하는 값을 표시할 수 있습니다.

    ------

    이렇게 MATCH 함수로 HLOOKUP의 행번호를 구하는 것입니다.

    -----

    문제가 상품코드와 판매수량에 따른 판매단가를 계산하는 것이므로

    [표2] 코드표 에서 2행의 판매수량과 (다, 기타)의 상품 코드를 이용하는 것입니다.

    HLOOKUP 함수에서 [D10]은 판매수량을 찾기위해 표시된 것입니다.

    HLOOKUP(D10, F2:I4, MATCH()에서 반환된 행번호)은

    판매수량[D10]을 범위 [F2:I4]의 첫 행인 [F2:I2]에서 찾아, 반환된 행번호 위치에 있는 데이터를 반환하게 됩니다.

    설명이 복잡해졌습니다. 함수별로 이해하시면 될 것 같습니다.

    좋은 하루 보내세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.