엑셀 함수 > 데이터베이스 함수 > DGET 함수 - 데이터베이스에서 조건에 맞는 하나의 값 구하기

DGET 함수 - 데이터베이스에서 조건에 맞는 하나의 값 구하기

엑셀의 데이터베이스(Database)함수는 다양한 조건에 맞는 합계를 구한다던지, 평균, 갯수, 최대값, 최소값 등을 쉽게 구할 수 있는 함수이다.

모든 데이터베이스 함수는 알파벳 “D”로 시작하며 DGET, DAVERAGE, DSUM, DCOUNT, DMAX, DMIN 등이 있다.

오늘 알아볼 DGET함수는 데이터베이스로 지정한 범위에서 조건을 만족하는 하나의 값을 구해준다.

※ 데이터베이스 함수를 사용하기 위해서는 데이터베이스 범위 지정, 조건 설정 등을 먼저 이해할 필요가 있으므로 다음 링크를 참조하자.
[ 엑셀 데이터베이스(Database) 함수 이해하기 ]

 

구문(Syntax)

DGET(database, field, criteria)

데이터베이스(database)에서 조건(criteria)에 맞는 하나의 항목(field)을 구해준다.

만약, 조건에 맞는 항목이 없으면 #VALUE! 오류 값이 반환되고,
조건에 맞는 항목이 여러 개이면 #NUM! 오류 값이 반환된다.

인수 :
– database : 값을 찾을 셀 범위
– field : 하나의 값을 구할 필드
– criteria : 조건을 설정할 범위

 

사용예 :

1) 두가지 조건을 동시에 만족하는 하나의 값 구하기(AND조건)

아래 그림과 같이 시트의 $B$4:$G$19 범위에 어떤 회사의 판매실적자료가 있다고 할 때

거래처가 “강남아트박스”이고 상품분류가 “복사용지”인 것의 판매금액 1개를 구해보자.

논리식으로 표현하면 다음과 같다.
(거래처="강남아트박스" AND 상품분류 = "복사용지")

 

B31셀에 다음 수식을 입력한다.

=DGET($B$4:$G$19,"판매금액",B23:C24)

엑셀 데이터베이스 함수 DGET

수식의 인수를 하나씩 살펴보자.

=DGET($B$4:$G$19,"판매금액",B23:C24)

  • $B$4:$G$19 : 값을 찾을 범위(Database)
  • “판매금액” : 하나의 값을 구할 필드(Database의 “판매금액” 필드명을 의미한다)
  • B23:C24 : 값을 찾을 조건을 설정할 범위

세번째 인수 “B23:C24″의 범위를 유심히 살펴보자.

필드명 “거래처”와 “상품분류”가 단순히 제목역할만 하는 것이 아니고 실제로 값을 찾을 때 사용되는 필드명이다. 따라서 필드명이 Database영역의 필드명과 틀리면 값이 찾아지지 않으므로 주의해야 한다.

수식이 정상적으로 입력되었다면,

  • 거래처가 “강남아트박스”이고
  • 상품분류가 “복사용지”인 자료가

아래와 같이 1개가 찾아지고

엑셀 데이터베이스 함수 DGET

최종적으로 B31셀에 “판매금액” 필드의  값 600,000원이 표시된다.

 

 

2) 세가지 조건을 동시에 만족하는 하나의 값 구하기(AND조건)

거래처가 "강남아트박스"이고 상품분류가 "복사용지"이고 단가가 5000원 미만인 것의 판매금액 1개를 구해보자.

논리식으로 표현하면 다음과 같다.
(거래처="강남아트박스" AND 상품분류 = "복사용지" AND 단가 <5000)

 

B35셀에 다음 수식을 입력한다.

=DGET($B$4:$G$19,"판매금액",B23:D24)

엑셀 데이터베이스 함수 DGET

수식의 인수를 하나씩 살펴보자.

=DGET($B$4:$G$19,"판매금액",B23:D24)

  • $B$4:$G$19 : 값을 찾을 범위(Database)
  • “판매금액” : 하나의 값을 구할 필드(Database의 “판매금액” 필드명을 의미한다)
  • B23:D24 : 값을 찾을 조건을 설정할 범위

수식이 정상적으로 입력되었다면,

  • 거래처가 "강남아트박스"이고
  • 상품분류가 "복사용지"이고
  • 단가가 5000원 미만인 조건을 만족하는 자료는

존재하지 않으므로 최종적으로  B35셀에 #VALUE! 오류가 표시된다.

 

 

3) 조건을 하나라도 만족하는 하나의 값 구하기(OR조건)

거래처가 "강남아트박스"이거나 "종로"로 시작하거나 "나나문구"인 것의 판매금액 하나를 구해보자.

논리식으로 표현하면 다음과 같다.
(거래처="강남아트박스" OR 거래처="종로*" OR 거래처="나나문구")

 

B39셀에 다음 수식을 입력한다.

=DGET($B$4:$G$19,"판매금액",B23:B26)

엑셀 데이터베이스 함수 DGET

수식의 인수를 하나씩 살펴보자.

=DGET($B$4:$G$19,"판매금액",B23:B26)

  • $B$4:$G$19 : 값을 찾을 범위(Database)
  • “판매금액” : 하나의 값을 구할 필드(Database의 “판매금액” 필드명을 의미한다)
  • B23:B26 : 값을 찾을 조건을 설정할 범위

세번째 인수 “B23:B26″의 범위를 살펴보자.

필드명 밑에 입력된 조건값들이 각각 다른 행에 있으므로 “또는(OR)“조건이 적용된다.

※ 값을 찾을 조건 지정 시 AND조건과 OR조건을 설정하는 방법

Database함수의 마지막 인수인 “조건을 설정할 범위”의 형태에 따라서
AND조건이 되기도 하고 OR조건이 된다.

다음 그림을 확인해 보자.

  • 같은 행에 설정하면 AND 조
    엑셀 데이터베이스 함수 - 조건지정

 

  • 다른 행에 설정하면 OR 조건
    엑셀 데이터베이스 함수 - 조건지정

수식이 정상적으로 입력되었다면, 거래처가

  • 거래처가 "강남아트박스"이거나
  • "종로"로 시작하거나
  • "나나문구"인 자료가

아래와 같이 1개가 아니라 11개가 찾아지므로

엑셀 데이터베이스 함수 DGET

최종적으로 B39셀에 #NUM! 오류가 표시된다.

 

이 것으로 엑셀의 DGET함수에 대한 설명을 마친다. 다른 데이터베이스 함수의 설명은 아래 링크를 참조하자.

 

[ 엑셀 데이터베이스 함수 ]

엑셀웍스 책 출간 안내

그동안 엑셀웍스에 올린 '엑셀 강좌', '함수 사용법', 여러 '실무 예제'에서 핵심만 뽑아 '된다! 엑셀 수식 & 함수' 책으로 출간하였습니다.

엑셀웍스 책 출간안내  자세히 보기

온라인 구매처: 예스24   교보문고   알라딘 

댓글 남기기

Scroll to Top