컴활 1급에서 출제자는 조금 더 복잡한 DATABASE 함수 문제를 출제하기 위해
수험자에게 직접 연산식을 작성하라고 하는 경우도 있습니다.
밑에 사진을 보겠습니다.
데이터베이스(표1) 에서
판매가의 50%가 7500 이상인 항목의 개수를
구해야 하는 상황이라고 해봅시다.
3 번째 인수인 criteria를 추출해야 할 부분이 비어있으므로
그 부분을 먼저 채우도록 합니다.
판매가의 50%가 7500 이상인 항목을
구하여야 한다고 했으므로
[표 1]의 '판매가' 필드를 기준(criteria)으로 삼아야 할 것입니다.
세부적으로는
'판매가' 필드에 있는 값을 2로 나누었을 때 7500 이상이 되는 항목을
찾아야 하는 것이므로
이에 맞는 연산식을 사용하여
세부기준을 만족시키도록 합니다.
판매가가 FALSE라는 것은
연산식을 사용한 D4 셀의 값이 7500 이상이 안된다는 의미입니다.
이 연산식은
DCOUNTA 함수의 criteria 인수에 추가될 항목으로서
데이터베이스 쪽 '판매가' 필드(빨간 박스)의 항목들에
적용됩니다.
DCOUNTA 함수를 사용하여
인수를 모두 입력하고 엔터를 누르면
값이 안나옵니다.
왜냐하면
데이터베이스의 필드명(왼쪽 빨간 박스의 '판매가')과
기준의 필드명(오른쪽 빨간 박스의'판매가')이 같을 때에
DATABASE 함수는
문자로 인식된 값 만을 가져오기 때문입니다.
즉, 지금 엑셀은
위 표 판매가 필드에서
연산식이 적용된 값을
가져오는것이 아니라
연산식 그 자체를 가져옵니다.
즉,
=D4/2>=7500 이라는 값 자체를 수식이 아닌 문자로 인식해서
이 문자와 같은 문자가 있는지를 찾아본다는 것입니다.
이러한 현상을 피하기 위해서
[표 2] '판매가' 부분의 필드 명을 삭제하거나
[표 1] 필드명과 다르게 설정해야 합니다.
*단, 범위는 그대로 지정해 놓고 있어야 한다는 것에 주의합시다.
그러면 연산식(표 2의 주황 박스)이 제대로 실행됩니다.
해당 연산식은 표 1의 주황 박스를 범위로 하여
연산식에 일치하는 값의 개수를 찾아낼 것입니다.
정상적으로 값이 출력되었습니다.
그러므로, 데이터베이스 함수에 연산식이 포함된다면
미리 필드명을 없애든지 바꾸든지 해 놓는것이 좋을 것입니다.
위 내용은 Excel 기본작업 고급필터에서도 종종 사용되는 개념이므로
확실하게 알아둡시다.
'강의 및 공부 > 엑셀실기 강의 [완료]' 카테고리의 다른 글
[058] Excel 계산작업 - IF 함수가 들어간 배열수식 (20) | 2014.08.15 |
---|---|
[057] Excel 계산작업 - 배열수식 (25) | 2014.08.15 |
[055] Excel 계산작업 - DATABASE(DSUM, DAVERAGE, DCOUNTA, DMAX) 함수 (18) | 2014.08.15 |
[054] Excel 계산작업 - COUNTIF 함수 (0) | 2014.08.15 |
[053] Excel 계산작업 - INT, ABS, MOD 함수 (4) | 2014.08.15 |