티스토리 뷰

엑셀 DCOUNT 함수는 지정된 데이터베이스 범위에서 조건을 만족하는 레코드( 행 )들 중 지정 필드의 숫자 셀 개수를 구하는 함수이다. 엑셀 데이터베이스 구조를 활용하는 조건부 COUNT 함수이다. 따라서, 조건부로 개수를 구하는 COUNTIFS 함수로 대체할 수도 있다.

[컴활 2급] 컴퓨터활용능력 실기 엑셀 COUNTIFS 함수 - 통계 :
http://secstart.tistory.com/558

엑셀 DCOUNT 함수도 이전에 배운 데이터베이스 함수처럼 실행된다. 인수와 기능, 사용법도 같다. 수치 셀 개수를 구하는 차이가 있을 뿐이다. 엑셀 DCOUNT 함수를 배워보자.

엑셀 데이터베이스 함수 기초 용어 :
http://secstart.tistory.com/742

엑셀 DCOUNT 함수 기본 설명

설명 : 엑셀 DCOUNT 함수는 데이터베이스 범위에서 조건을 만족하는 레코드( 행 )를 찾고 원하는 필드( 열 )의 수치 셀 개수를 구한다.
구문 : DCOUNT( database, [field], criteria )
인수 :
    database : 데이터베이스 지정 범위. 필드명이 최상위 행에 위치.
    [field] : 수치 셀 개수를 구할 필드명 ( 참조, 순서, 텍스트로 전달 ). 생략시 조건( criteria )을 만족하는 모든 레코드 수 반환.
    criteria : 레코드 선택을 위한 조건 범위 ( 필드명 아래 조건, 다중 조건 가능 )

노트1 : 다중 조건 지정시 필드명은 동일 행에 위치
    - 조건이 동일 행이라면 AND 연산( 논리곱 )
    - 조건이 다른 행이라면 OR 연산( 논리합 )
노트2 : 데이터베이스 함수( DCOUNT 등 )는 영문 대소문자를 구분하지 않는다.
노트3 : 조건 표현식에는 와일드카드( wildcards ) 사용 가능. ( ? : 단일 문자, * : 문자열 )로 처리

참고1 : 와일드카드 문자를 검색할 때는 물결( ~ : 틸트 )을 그 앞에 삽입. 예로, "~*" 는 '*' 을 검색.

엑셀 DCOUNT 함수 사용 예제

DCOUNT 함수로 조건을 만족하는 레코드들의 개수를 세는 사용 예제이다.

[그림1] 엑셀 DCOUNT 함수로 조건을 만족하는 숫자 셀 개수 계산[그림1] 엑셀 DCOUNT 함수로 조건을 만족하는 숫자 셀 개수 계산



사용 예제1 : =DCOUNT( A4:F11, C4, A14:A15 )
사용 결과1 : 2

DCOUNT 함수에 주어진 데이터베이스 범위 A4:F11 에서 조건을 만족하는 원하는 필드( 열 )의 수치 셀 수를 구한다. 조건은 세 번째 인수 A14:A15 범위에 설정되어 있다. 조건을 풀어보면 A14 셀의 필드명 '부서' 가 '쇼핑몰' 인 레코드( 행 )를 얻는다. 이제 선택된 레코드의 두번째 인수 C4 셀, '고과점수' 필드에서 숫자 셀의 개수를 구하는 것이다. '고과점수' 는 모두가 숫자로 되어 있다. 따라서 결과는 조건을 만족하는 레코드 개수와 같은 2 로 반환된다.

참고2 : DCOUNT 함수의 주의 사항
엑셀 DCOUNT 함수는 COUNT 함수의 기능을 하는 데이터베이스 함수이다. 숫자 셀의 수만을 센다는 것이다. 모든 셀의 개수를 세는 함수가 아니란 것을 반드시 기억하여야 한다.

사용 예제2 : =DCOUNT( B4:F11, , C14:D16 )
사용 결과2 : 5

데이터베이스 범위는 추석 특별 상여금 자료의 일부인 B4:B11 이다. 이제까지의 데이터베이스 함수는 기본적으로 두 번째 인수를 생략할 수 없었다. 하지만 DCOUNT 함수는 field 인수( 두번째 인수 )를 생략할 수 있다. 두 번째 인수가 생략되면 이 함수식은 조건을 만족하는 모든 레코드의 수를 계산한다.

세 번째 인수 C14:D16 의 조건을 만족하는 모든 레코드의 수를 세는 것이다. 두 번째 인수 생략시 수치 필드는 없어도 된다. 이때는 레코드의 수를 계산하기 때문이다. 조건은 풀어보면 '고과점수' 가 7 을 초과하거나 '기본급' 이 145만 이상인 레코드의 개수를 세는 것이다.( 노트1 ) 이를 만족하는 레코드의 수, 5 가 결과로 반환된다.

참고3 : 만일 여기서 두 번째 인수( field )로 '이름' 이나 '부서' 필드가 지정되었다면 결과는 무조건 0 일 것이다. 두 필드( 열 )에는 수치 셀이 없기 때문이다. ( 참고2 ) 주의하기 바란다.

사용 예제3 : =DCOUNT( A4:E11, 5, E14:F15 )
사용 결과3 : 3

추석 특별 상여금, A4:E11 을 데이터베이스로 잡고 조건을 만족하는 레코드들 중 5 번째 필드인 '특별상여율' 필드( 열 )에서 숫자 셀의 개수를 계산한다. 계산에 포함할 레코드( 행 )의 선택 조건은 '수당' 이 300만 미만이고 '수당' 이 200만을 초과하는( 곧, 수당이 200만 ~ 300만 사이 ) 레코드이다.( 노트1 )

이렇게 선택된 레코드에서 '특별상여율' 필드로 숫자 셀의 개수를 세는 것이다. 이때 300%, 이도 숫자 3 과 같음을 잊지 말자. 이 수당 조건을 만족하는 것은 F8:F10 이다. 따라서, 이 레코드들에서 '특별상여율' 필드의 숫자 셀 갯수를 구한다, 총 3 개의 셀이 결과로 반환된다.


조건을 만족하는 필드의 수치 값의 개수를 세는 함수이다. 엑셀 데이터베이스 함수이기에 사용법과 구조는 같다. 데이터베이스 함수들은 모두가 실행 방법이 같아 조금은 지루한 감도 있지만 하나를 익혀두면 절대 잊을 수 없는 함수이다. 쉽게 배우고 다양하게 활용하자.

[엑셀 함수] 데이터베이스 DCOUNT 함수 강좌 - 이전 버전 :
http://secstart.tistory.com/171

[함수] 컴활 2급 실기 엑셀 DCOUNT 함수 - 컴활 2급 기출 풀이 :
http://secstart.tistory.com/117

[함수 요약] 컴활 실기 대비 데이터베이스 함수 요약 정리 :
http://secstart.tistory.com/175

마늘빵.



댓글