본문 바로가기
세상의 모든 엑셀 (엑셀팁, 질문)

030. (엑셀 팁, 질문) 지정 숫자 사이의 정수 합계 구하기

by Excel.Jump 청출어람 2023. 6. 12.
반응형

 
 
 

지정 숫자 사이의 정수 합계 구하기

 
 
 
 

■ 목차

 
1. 문제
2. 문제풀이 원리
3. 문제풀이 : 단계별 수식 만들어 보기
** 핵심 요약
 
 
 
 

1. 문제

 
  - 2개의 정수를 지정하고 지정한 숫자 사이에 존재하는 모든 정수의 합계를 구하는 문제입니다. 

  - 만약 2와 5를 지정하게 되면 2, 3, 4, 5의 합계를 구해야 하는 문제이고 반대로 5, 2를 지정하여도 되며 이경우에는 5, 4, 3, 2의 합계인 
  - 5+4+3+2 = 14를 구해줘야 하는 문제인데 쉬워 보이면서도 간단하지 않습니다. 
 
 
 
 
 

2. 문제풀이 원리

 
  - 문제풀이는 엑셀의 "Indirect, Row, Sum 함수" 와 "배열 수식"을 사용하게 됩니다. 


  - 1) 연속된 일련번호 구하기

  - 먼저 정수 2개를 지정하게 되면 지정된 정수에서 연속된 일련번호를 구해줘야 하는데
  - 2, 5를 지정한 경우에 2와 5를 이용하여 2, 3, 4, 5라는 연속된 정수의 일련번호를 만들어 줘야 합니다. 
  - 보통의 경우 엑셀에서 일련번호라고하며 "Row 함수"를 가장 많이 사용하게 됩니다. 

  - "=Row(A2:A5)"와 같이 Row 함수의 인수로 셀의 범위를 "A2:A5"와 같이 지정해 주게 되면 {2 ; 3 ; 4 ; 5 }와 같이 지정된 셀 주소의 행번호에 해당하는 일련 번호로 구성된 배열을 만들 수가 있습니다.


  - 2) Indirect 함수로 텍스트 형식의 셀 주소를 "셀 참조 형식"의 인수로 사용하기 

  - Row 함수의 인수인 "A2:A5"라는 셀 주소는 주어지는 2, 5라는 두 개의 숫자를 이용해서 텍스트 연결("& 연산자 사용)/조합으로 만들 수 있습니다. 
  - 다만 텍스트로 만들어진 셀주소는 바로 함수의 인수(=셀 참조 주소)로 사용이 불가능하고 
  - 텍스트를 "셀 참조 주소 형식"으로 변환 해주는 Indirect 함수라는 것을 사용해서 전환을 해주어야 비로소 "셀 참조 주소 형식"이 되어 사용이 가능합니다. 

  - 텍스트 주소를 셀 참조 주소형식으로 변형 :  =INDIRECT("A"&B4&":"&"A"&C4)


  - 3) 배열 수식 적용하기

  - 여기서 우리가 사용해야 하는 인수는 {2 ; 3 ; 4 ; 5 }와 같이 하나의 셀 수식에서 연속된 숫자인 "배열 수식" 형태를 가지기 때문에 
  - 수식 마무리는 "Enter" 대신에 배열 수식을 입력하는 "Ctrl + Shift + Enter"를 사용해서 배열수식 형식으로 입력해 주셔야 합니다. 
 
 
 
 
 

3. 문제풀이 : 단계별 수식 만들어 보기

 
  - 1) 셀 주소 조합 : "& 연산자 ( = And 연산자)"

  - 텍스트를 연결해 주는 & 연산자를 사용하여 "A2:A5"와 같이 되도록 지정된 정수를 이용하여 수식을 아래와 같이 만들어 줍니다 
  - 셀 주소 텍스트 조합은 띄어쓰기 없이 "셀 주소 형식"과 정확하게 일치하게 작성되어야 합니다. 

  - 셀 주소 조합 : = "A"&C2&":"&"A"&C3
 
 

셀 주소 조합 : & 연산자 사용
* 셀 주소 조합 : & 연산자 사용

 
 
  - 2) 셀 참조 주소 형식으로 만들기 : Indirect 함수

  - 조합된 셀 주소는 아직까지는 단순한 "텍스트"로 함수에 적용할 수 있는 "셀 참조 주소"형식이 아닙니다. 
  - 이렇게 텍스트를 "셀 참조 주소"형식으로 변형해 주는 함수가 바로 "Indirect 함수"입니다. 
  - "Indirect 함수"를 사용해야 비로소 함수에 사용이 가능하게 됩니다. 

  - 그리고 여기서부터는 반드시 "배열 수식"으로 입력해야 하며
  - 보통의 수식입력이 "Enter"로 마무리하지만 "배열 수식"은 "Ctrl + Shift + Enter"로 마무리 입력을 해주시면 됩니다.
  - 이렇게 배열 수식으로 입력을 하게 되면 아래와 같이 수식이 중괄호 ( { } )로 둘러싸인 모습으로 표현이 되게 됩니다. 

  - 셀 참조 주소 형식으로 만들기 : "{=INDIRECT("A"&C2&":"&"A"&C3)}"
 
 

셀 참조 주소 형식으로 만들기 : Indirect 함수
* 셀 참조 주소 형식으로 만들기 : Indirect 함수

 
 
  - 3) 일련번호 만들기 : Row 함수

  - 이제는 만들어진 셀 주소형식을 Row 함수를 사용하여 일련번호를 만들어 주면 됩니다. 
  - 이 때도 한 개의 셀에 연속된 일련번호를 입력해야 하기 때문에 "배열 수식" 형식으로 입력을 해줘야 합니다. 

  - 일련번호 : {=ROW(INDIRECT("A"&C2&":"&"A"&C3))}
 
 

일련번호 만들기 - Row 함수
* 일련번호 만들기 - Row 함수

 
 
  - 4) 합계 구하기 : Sum 함수

  - 일련번호를 Sum 함수를 사용해서 합계를 구해주면 최종 수식이 완성이 되게 됩니다. 

  - 합계 구하기 : {=SUM(ROW(INDIRECT("A"&C2&":"&"A"&C3)))} 
 
 

합계 구하기 - Sum 함수
* 합계 구하기 - Sum 함수

 
 
  - 주어진 숫자 2개로 일련번호를 만들기 위해서 Row 함수를 사용해야 하며
  - Row 함수의 인수로 사용할 셀 참조 주소 형식으로 만들기 위해 Indirect 함수를 사용합니다. 
  - 그리고 만들어진 일련의 정수를 Sum 함수로 합계를 구해주면 되는데 
  - 이 모든 수식은 하나의 셀에 작성이 되는 수식으로 "배열 수식"을 사용해 주시면 됩니다. 
 
 
 
 
 

** 핵심 요약 :  지정 숫자 사이의 정수 합계 구하기

 
1. 문제

  - 2개의 정수를 지정하고 지정된 숫자 사이에 존재하는 모든 정수의 합계를 구해보자


2. 문제풀이 원리

  - 1) 연속된 일련번호 구하기
  - 보통의 경우 엑셀에서 일련번호라고하며 "Row 함수"를 가장 많이 사용한다.
  - "=Row(A2:A5)"와 같이 Row 함수의 인수로 셀 범위를 "A2:A5"와 같이 지정해 주게 되면 {2 ; 3 ; 4 ; 5 }와 같은 배열을 구할 수 있다.

  - 2) Indirect 함수로 텍스트 형식의 셀 주소를 "셀 참조 형식"의 인수로 사용하기 
  - 텍스트를 "셀 참조 주소"로 변환을 해주는 Indirect 함수라는 것을 사용해서 전환을 해주어야 비로소 "셀 참조 주소"가 되어 사용이 가능하다.

  - 텍스트 주소를 셀 참조 주소형식으로 변형 :  =INDIRECT("A"&B4&":"&"A"&C4)

  - 3) 배열 수식 적용하기
  - 수식 마무리는 "Enter" 대신에 배열 수식을 입력하는 "Ctrl + Shift + Enter"를 사용해서 입력해 주셔야 한다.


3. 문제풀이 : 단계별 수식 만들어 보기

  - 1) 셀 주소 조합 : "& 연산자 ( = And 연산자)"
  - 셀 주소 조합 : = "A"&C2&":"&"A"&C3

  - 2) 셀 참조 주소 형식으로 만들기 : Indirect 함수
  - 셀 참조 주소 형식으로 만들기 : "{=INDIRECT("A"&C2&":"&"A"&C3)}"

  - 3) 일련번호 만들기 : Row 함수
  - 일련번호 : {=ROW(INDIRECT("A"&C2&":"&"A"&C3))}

  - 4) 합계 구하기 : Sum 함수
  - 합계 구하기 : {=SUM(ROW(INDIRECT("A"&C2&":"&"A"&C3)))} 
 
 

예제. 030_지정 정수 사이 합계
0.01MB

 
 

[세상의 모든 엑셀 (엑셀팁, 질문)] - 999. 세상의 모든 엑셀(엑셀팁, 질문) 목차

 

999. 세상의 모든 엑셀(엑셀팁, 질문) 목차

[세상의 모든 엑셀 (엑셀팁, 질문)] - 001. (엑셀 팁, 질문) 누적 합계 구하기 - 절대참조/상대참조, 빠른 분석 도구 [세상의 모든 엑셀 (엑셀팁, 질문)] - 002. (엑셀 팁, 질문) 날짜 칸 나누어 입력하기

nextmeok.tistory.com

 
 
 
 
* 엑셀 관련 궁금하신 거나 어려운 점이 있으시면 자유롭게 질문을 해주세요.
* 가능한 도움을 드릴 수 있도록 하겠습니다.
* 저도 많이 알지는 못하지만 누구나 그렇듯 시작이란 게 있고 경험이란 게 다를 것 같습니다.
* 편하게 문의하시면 됩니다. 저도 모를 수 있다. 감안해 주시고.

  - ILU, SH -

반응형

댓글