본문 바로가기

Wiki/Google Spreadsheet

구글 스프레드시트에서 다중 조건으로 값 찾기(arrayformula + vlookup)

  • 구글 스프레드시트에서 다중 조건으로 값을 찾는 방법에 관한 글입니다.
  • 여러 방법이 있겠지만, 저는 arrayformula와 vlookup을 이용하여 이 문제를 해결했습니다.

구글 시트 관련 꿀팁 글

구글 시트 관련 꿀팁 글을 작성하고 있다.

  1. 구글 스프레드시트 단축키 모음(윈도우 유저)
  2. 구글 스프레드시트 단축키 모음(맥북 유저)
  3. 구글 스프레드시트에서 다중 조건으로 값 찾기(arrayformula + vlookup)
  4. 구글 스프레드시트 다운로드, 가장 쉽게 하는 방법
  5. 구글 스프레드시트의 행과 열 개수 제한(최대 개수)
  6. 구글 시트에서 이름이 지정된 함수 기능 사용법
  7. 구글 시트에서 IMPORTRANGE 함수 서식까지 가져오기
  8. 구글 시트에서 IMPORTRANGE 함수 사용 시, "결과가 너무 큽니다" 에러 해결 방법
  9. 구글 시트에서 날짜 데이터에 한 달 더하기/빼는 방법(EDATE)

문제

  • vlookup을 쓰다보면, 조건을 하나가 아닌 여러 컬럼으로 조건을 걸어야 할 때가 있다.
  • 하지만, vlookup 하나만으로는 이 문제를 해결하기 쉽지 않다.

해결 방법

  • 아래와 같은 방법으로 vlookup에 다중 조건을 걸 수 있다. 복잡해 보이지만, 막상 하면 어렵지 않다.
    • ARRAYFORMULA(VLOOKUP(찾는 기준이 되는 키1&찾는 기준이 되는 키2, {검색 대상 테이블의 키1 전체&검색 대상 테이블의 키2 전체, 검색 대상 테이블에서 갖고 오고 싶은 열}, 2, 0))
  • 아래의 스크린샷은 연도와 월을 기준으로 성수기 여부 열을 가져오는 예제다.
    • 왼쪽 테이블엔 연도, 월, 사용자수가 있었고, 오른쪽 테이블엔 연도, 월, 성수기 여부가 있었다.
    • 양쪽 테이블에 연도와 월 열이 있으므로 이를 조합해 키로 삼고, 성수기 여부 열을 가져와서 왼쪽 테이블에 병합했다.
  • 여기서 주의할 점은 아래와 같다.
    • arrayformula가 vlookup을 감싸고 있는 형태여야 한다.
    • vlookup의 두번째 파라미터인 '범위'는 중괄호 형태여야 한다.
    • 중괄호로 묶은 범위는 쉼표를 기준으로 컬럼을 구분한다.

arrayformula + vlookup

참고 문서