0
 21   3   1
  View Articles

Name  
   손병목  (2002-02-28 16:16:53, Hit : 12224, Vote : 1130)
Homepage  
   http://www.itmembers.net
File #1  
   배열합계.xls (16.5 KB)   Download : 491
Subject  
   [엑셀] 홀수행 또는 짝수행의 값을 더하기
엑셀에서 홀수행 또는 짝수행의 값을 더하는 방법을 가르쳐 달라는 부탁을 받았습니다.
평소 엑셀을 자주 사용하다보면 기본적인 SUM() 함수나 + 연산으로 해결하기 힘든 경우가 생깁니다.
이것도 그 중의 하나라고 할 수 있는데, 해결 방법이 그리 쉽지는 않습니다.
이럴 땐 배열 합계를 이용하면 됩니다.

원래 부탁받은 내용은 다음과 같습니다.

노란 색 셀에 들어갈 값을 구해야하는데...
물론 훨씬 양이 많았지요. 그러니 일일이 C3+C6+C9+C12....와 같은 식으로 수식을 만들 수는 없는 노릇입니다.

해결해 봅시다.

먼저 창의력과 논리력을 발휘하여 규칙을 생각해 냅니다.
  1. 3행 단위로 계산한다.
  2. 3행 단위를 계산하려면 각각의 행번호를 알아야 한다.
  3. 각각의 행번호를 3으로 나누었을 때 나머지가 0이면 첫번째, 1이면 두번째, 2이면 세번째 행을 의미한다.
  4. 위 2와 3을 가능하게 하는 엑셀의 함수는 어떤 것이 있을까?
    • 행번호를 구하는 함수는 ROW()
    • 나누어서 나머지를 구하는 함수는 MOD()
    • 합계를 구하는 함수는 SUM()
    • 조건을 나타내는 함수는 IF()


그리하여 얻은 결론입니다.

  • F3셀의 수식 =SUM(IF(MOD(ROW(C3:C1000),3)=0,C3:C1000,0)) 행번호 3,6,9...등 3의 배수
  • F4셀의 수식 =SUM(IF(MOD(ROW(C3:C1000),3)=1,C3:C1000,0))
  • F5셀의 수식 =SUM(IF(MOD(ROW(C3:C1000),3)=2,C3:C1000,0))


그러나 이렇게 수식을 입력하고 과감하게 Enter를 탁! 치면.... 엉뚱한 숫자가 나오죠...
위의 함수는 일반적인 함수 사용법이 아닙니다.
배열을 이용한 것인데, 이때는 반드시 그냥 Enter가 아니라 Ctrl+Shift+Enter를 해야합니다.
Ctrl과 Shift 키를 누른 상태에서 엔터를 치라는 뜻입니다.

그러면 기존의
SUM(IF(MOD(ROW(C3:C1000),3)=1,C3:C1000,0)) 수식이
{SUM(IF(MOD(ROW(C3:C1000),3)=1,C3:C1000,0))} 과 같이 중괄호로 둘러싸여 표시됩니다.
그리고 당연히 결과도 원하는 대로 나옵니다.

첨부한 파일을 참조해 보세요.

이상 동주아빠 손병목이었습니다.


skarb710
11  2011/02/18 08:54:20   

Name
Memo  


Password


댓글 자동 등록 방지용 숫자

Prev
   [엑셀] 셀 하나에 몇 글자까지 쓸 수 있을까? [2]

손병목


Copyright 1999-2017 Zeroboard / skin by Zetyx