나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 지삿개 (jepark2)

추천:  2
파일:     조회:  1979
제목:   배열에 관한 질문입니다
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

1. 엑셀 버전(95,97,2000,2002):
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP):
3. CPU (486,PentiumI/II/III/IV...):
4. RAM (32,64,128,256,512MB,1G...): 

* 아래줄에 질문을 작성하세요 >>
이름 test를 배열{1;2}로 정의 한 경우에
sum(test) = 3, sum({1;2}) = 3 으로서 그냥 입력한경우에도 같은값이 나옵니다.
그러나
sum(test^2) = 1 이 되나 sum({1;2}^2) = 5 로서 다르게 나옵니다.(그냥 Enter)
물론 sum(test^2)를 배열수식으로 입력(Ctrl+Shift+Enter)하면 5가 됩니다.
다시 말하면 저의 질문요지는 어느경우에 sum함수는 내부식을 배열로 인식하는가 한것입니다.  엑셀의 오류일까요 아니면 제가 잘못 이해하는 것일까요
아시는 분은 부탁드립니다.
 
[불량 게시물 신고]  
강용림배열상수로 직접 입력하는 경우엔 ({1;2,3} 처럼 입력 하는 것을 말함)
sum 과 같이 결과가 스칼라가 되는 함수에 있어서 그냥 enter 만 치셔도 됩니다.

그러나 배열상수가 아니라 배열로 (배열참조 등등) 입력하시면
반드시 ctrl+shift+enter 로 마무리 하셔야 하죠.
09-15 (15:43)
삭제 ■신고
지삿개설명이 조금 그렇군요 
sum(test)는 배열참조로 입력하였지만 그냥 enter만처도 올바른 결과를 얻고 있잖습니까? 반드시 ctrl+shift+enter를 칠필요가 없잖습니까?
09-15 (15:50)
삭제 ■신고
강용림에휴...

따지시듯 물으시니 할말이 없네요. ^^;
09-15 (15:55)
삭제 ■신고
지삿개할말이 없다고 하는게 아니고 잘모르겠다고 하심이 어떠실런지09-15 (16:24)
삭제 ■신고
강용림^^;

http://www.excellove.com/board/bbs/zboard.php?id=function&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=5

이 파일을 잘 살펴 보시겠습니까?

몇가지 테스트를 해보시면 공통점을 찾으실 수 있을 겁니다.

물론 제가 아는 게 일천하긴 합니다만...
불청객인것 같아 죄송하네요. ^^;
09-15 (16:42)
삭제 ■신고
지삿개주어진 파일을 잘봤습니다. sum에 대해 무척도움이 되는데 위의 경우에 대한 제궁금증에 대해선 해결이 잘 안되는것 같네요 (test = {1;2}인데 test^2 <> {1;4}이며 {test^2} = {1;4} 인것 같군요)
아무튼 관심을 가져주셔서 감사합니다.
09-15 (19:30)
삭제 ■신고
강용림안녕하세요?

test^2 을 수식 평가 했을 때 {1;4} 라고 해서
=sum(test^2) 의 값이 5 가 되어야 한다면 (배열수식으로 입력 안했을 때)
일반적인 다른 배열 수식에서도 배열수식으로 입력할 필요가 없지 않을까요? ^^;

일반적인 경우 배열수식으로 입력하지 않으면 #value! 오류가 발생하지만
sum 함수 안쪽을 f9 로 수식평가하면 배열은 그대로 살아 있지요.

암튼 나중에 배열수식 강좌 올릴때 반영하겠습니다.

모쪼록...
09-15 (20:22)
삭제 ■신고
황기성*^_^* 배열과 배열수식은 매우 다른 것이랍니다. 그 점을 혼동하고 계신 듯 싶군요.

test = {1;2}인데 test^2 <> {1;4}이며 {test^2} = {1;4} 인것 같군요
라고 하셨는데, 그렇지 않답니다.

test^2 = {1;4}
랍니다.

=SUMPRODUCT(test^2)
라고 입력하시고 결과를 확인해 보세요. 5를 되돌릴 것입니다. sumproduct함수는 배열함수랍니다.

나머지 자세한 설명은 강용림 님이 해주실 것이므로...^^*

그럼...행운이 있으시길...!
09-15 (20:47)
삭제 ■신고
지삿개무슨말인지는 알고있습니다.
그런데 {1;2}^2은 배열상수가 아니고 배열수식이죠?
이런경우에 sum({1,2}^2) 그냥 enter만 쳐도 은 5를 되돌립니다.
그러나 sum(test^2)은 enter를 치면 1을 되돌리거든요 
즉, 이름을 사용했는지 안헀는지의 차이같습니다. 
즉 name을 사용하는경우와 안하는경우 역할이 틀리게된다는 뜻입니다.
이점에 대해서 좀더 자세히 설명을 부탁드립니다.
09-15 (21:03)
삭제 ■신고
황기성자세한 설명을 드리자니 게시판에서 쉽지 않겠군요^^;;

그런데 {1;2}^2은 배열상수가 아니고 배열수식이죠?
라고 하셨는데요, {1;2}는 배열상수랍니다. ={1;2}^2는 수식이구요, 이것을 Ctrl + Shift + Enter를 눌러 배열수식으로 입력하셔야 배열수식이 됩니다.

즉 name을 사용하는경우와 안하는경우 역할이 틀리게된다는 뜻입니다
라고 하셨는데요

배열상수를 이용할 때, 이름을 참조할 때, 워크시트 셀을 참조할 때 배열수식으로 입력하지 않으면 각기 수식의 결과가 달라질 수 있습니다.

자세한 것은 강용림의 배열 강좌를 기다려 보심이 좋을 듯 싶군요^^*

쉽게 설명하자면

이런 경우는 배열상수로 입력한 경우 수식의 결과가 단일 결과가, 참조인 경우는 수식의 결과가 다중 결과로 나오기 때문이랍니다.

={1;2}+{1;2}

=sum({1;2},{1;2})
=sum({1;2}+{1;2})
A1셀과 A2셀에 각기 1,2를 입력한 뒤
=sum(A1:A2,A1:A2)
B3셀과 B2셀에 각기 =sum(A1:A2+A1:A2)
라고 계산 결과를 확인해 보세요.


그럼...행운이 있으시길..
09-16 (13:16)
삭제 ■신고
        
  

작성일 : 2003-09-15(14:35)
최종수정일 : 2003-09-15(14:35)