안녕하세요
문방사우입니다
오늘은
배열함수 1편!
시간입니다
1. 배열이란?
→컴퓨터 내에서 데이터를 저장하는 임시 창고
1차원(행), 2차원(행과 열).... 등등 다양한 배열이 저장
2. 왜 배열을 써야 하는가?
여러 개의 셀 영역(배열)을 대상으로 조건이 많은 경우 한번에 작업이 가능
3. 배열의 표현방식
1. =범위1*범위2·····
2. =SUM((조건1)*(조건2)····*(범위))
3. =SUM(IF((조건1)*(조건2)······,1,0))
4. =SUM(IF((조건1)+(조건2)······,1,0))
→조건을 만족하는 셀의 개수 측정
5. =SUM(IF((조건1)+(조건2)······,범위,0))
6. =SUM(IF((조건1)*(조건2)······,범위,0))
→조건을 만족하는 셀에 입력된 값들의 합을 측정
7. =AVERAGE(IF((조건1)*(조건2)······,평균을 구할 영역,0))
8. =AVERAGE((조건1)*(조건2)······*평균을 구할 영역))
→조건들을 만족하는 셀을 추출하여 전체 평균 측정시
9. =AVERAGE(IF((조건1)*(조건2)······,범위))
→조건들을 만족하는 셀들의 평균 측정시
→7,8과 9의 차이가 궁금하시다면??
https://excel-ppt-outlook-computer.tistory.com/13
배열을 표기할 때는 대개 이런방식으로 표기 합니다(다음 시간에 추가로 다루겠습니다)
또한 반드시 배열 표기를 할 때는, Ctrl +Shift + Enter키를 눌러주어야 합니다
1. =범위1*범위2·····
첫번째 그림, 단순히 범위의 곱들을
표현하는 예시입니다
D3,D4,D5에 개수와 단가의 곱을
나열하고 싶은데요
그럴 경우는, B3*C3, B4*C4, B5*C5를
일일이 나열할 수 없으니
D3 영역에 값을 입력해 줍니다
각각의 데이터 창고에서
동시에 B3를 뽑아내고
C3를 뽑아서
계산하시는 거라고 보시면 됩니다
=B3:B5*C3:C5
그러면 배열의 순서에 맞게
서로의 곱을 표현하게 됩니다
4. =SUM(IF((조건1)+(조건2)······,1,0))
B3~B8중 E3에 맞는 타입
C3~C8중 F3에 맞는 타입
이 2가지 조건 중 최소 1개라도 만족시키는
셀의 개수를 측정하는 배열입니다
(+는 or의 개념, x는 and의 개념입니다)
=SUM(IF(($B$3:$B$8=E3)+($C$3:$C$8=F3),1,0))
뒤에 1,0은 IF에 나오는 형식으로서
참일 경우 1, 거짓일 경우 0이 산출이 되게 됩니다
배열을 계산하여 나온 1의 개수들의 합이(SUM함수이니)
셀에 입력되는 값이 되겠죠?
EX) B3와 E3를 비교했을 때 동일X
(여기서부터 이미 틀렸으므로 값은 0이긴 합니다)
C3와 I3를 비교했을 때 동일X
→값은 0으로 추출
B4와 H4를 비교했을 때 동일ㅇ
(여기서부터 맞았으므로 값은 1로 계산됩니다)
C4와 I4를 비교했을 때 동일ㅇ
→값은 1로 추출
5. =SUM(IF((조건1)+(조건2)······,범위,0))
B3~B8중 E3에 맞는 타입
C3~C8중 F3에 맞는 타입
이 2가지를 모두 만족시키는 곳을 찾은
단가들의 총합을 표현하려고 합니다
=SUM(IF(($B$3:$B$8=H3)*($C$3:$C$8=I3),D3:D8,0))
EX) B3와 H3를 비교했을 때 동일X
C3와 I3를 비교했을 때 동일X
→값은 0으로 추출
B4와 H4를 비교했을 때 동일ㅇ
C4와 I4를 비교했을 때 동일ㅇ
→명제가 참이니 값은 D4로 추출
방금 전에 설명한 4번 하고 유사한 형식입니다
다만 그 전에는 OR의 개념이었다면
지금은 AND의 개념이고
조건을 만족한다면, 1이란 값 대신
D3~D8의 값들을 추출해서
합을 표현한다는 거겠죠?
오늘은 배열에 대해서 알아봤는데요, 간단하게 설명드리자면
가상의 데이터 공간에서 셀을 하나씩 뽑아내여 계산을 하는 방식이다
라고 이해해주시면 될 거 같습니다
그리고, SUM IF~~~에서 0은 빼셔도 되요
예를 들면
전체 데이터 100,200,300,400중에
조건을 만족하는 데이터가 200과 400이면
→지금 이 경우에는, 0을 적어준 것만으로도 배열에서 1개의 데이터 값으로
인식을 하고 있기 때문에
전체 데이터는 0,200,0,400 이렇게 인식이 되게 됩니다
그러면 0+200+0+400=600이 되겠죠?
=SUM(IF((조건1)+(조건2)······,범위,0))
→=SUM(IF((조건1)+(조건2)······,(범위))
하지만 이런식으로 바꿔주게 된다면
200,400 2가지 값만 인식하여서 200+400=600
같은 결과값을 추출하게 됩니다
이에 관해서는 배열시간 2번째
다음시간에 자세히
포스팅 하겠습니다
다음에 봐용~
'EXCEL' 카테고리의 다른 글
[Excel 10강] 원하는 데이터 추출에 유용한 추출 함수(LEFT, MID, RIGHT 함수) (0) | 2020.06.20 |
---|---|
[Excel 9-2강] 다중 조건일 경우 엑셀 배열 수식, 배열 함수 (0) | 2020.06.19 |
[Excel 8강] 엑셀 VLOOKUP, HLOOKUP 함수 (0) | 2020.06.17 |
[Excel 7강] 엑셀 합계 함수, SUMIF함수, SUMIFS함수 (2) | 2020.06.16 |
[Excel 6강] 엑셀 개수 함수, COUNTIF함수, COUNTIFS함수 (0) | 2020.06.16 |