다음을 통해 공유

다중 조건을 지원하는 엑셀 함수에서 조건 지정 순위에 따른 연산 처리 관련

익명
2012-03-22T08:05:03+00:00

쉽게 예를 들어서.

sumifs(계산열, 조건1, 조건2, 조건3) 이렇게 들어간다고 했을때 조건의 위치에 따른 연산속도에 차이가 있습니다. 그냥 제생각;;;

즉 sumifs(계산열, 조건1, 조건2, 조건3), sumifs(계산열, 조건2, 조건3, 조건1), sumifs(계산열, 조건3, 조건1, 조건2) 뭐 이렇게 지정했을때 같은 범위여도

연산 속도에 차이가 나는 건 확인했습니다. sumifs의 내부 구조가 뭐 당연하겠지만 하나의 조건을 만족할 때만 다른 조건을 확인하는 거 같습니다.

즉 sumifs가 첫번재로 수행하는 조건의 위치가 처음이냐 마지막이냐에 따라 연산속도가 많이 바뀔수도 있다고 생각하는데..

예를 들어 극단적으로 A열에 조건을 만족하는 것이 100만개 있고 B열에 조건을 만족하는 것이 50만개  C열에 조건을 만족하는 것이 10만개 있다고 했을때

제가 실험했을 때는 가정 적은 조건을 만족하는 것이 뒤로 갔을때 sumifs(계산열, A열, B열, C열) 가장 빠른 속도를 보여줬습니다.(꽤나 속도차이가 많이 났습니다)

즉 뒤에서 부터 조건을 검사해 나간다고 생각합니다.

그래서 이게 과연 맞는건지도 궁금하고요. 다른 다중 조건을 지원하는 엑셀 함수에서는 어떤 순으로 조건을 검사하는지 궁금합니다.

마지막으로 엑셀도 최적화를 다룬 책등이 있는지도 알려주시기 바랍니다.

Microsoft 365 및 Office | Excel | 가정용 | Windows

잠긴 질문. 이 질문은 Microsoft 지원 커뮤니티에서 마이그레이션되었습니다. 질문이 도움이 되었는지 여부에 대해 응답할 수는 있지만, 메모나 회신을 추가하거나 질문을 따를 수는 없습니다.

댓글 0개 설명 없음

질문 작성자가 수락한 답변

익명
2012-03-22T08:50:43+00:00

안녕하십니까? whoayu 님

Microsoft Office의 Excel 사이트를 방문해 주셔서 감사합니다.

문의 하신 다중 조건을 지원하는 Excel 함수에서 조건 지정 순위에 따른 연산 처리에 대한 답변을 드리겠습니다.

말씀해 주신 Sumifs에 대한 연산 속도 등은 작업해 주시는 환경 등에 따라서 달라질 수 있는 부분입니다. 정확한 확인을 위해서는 PC 재부팅 후 sumifs(계산열, 조건1, 조건2, 조건3) 을 연산하고, 다시 PC를 재부팅하고, sumifs(계산열, 조건2, 조건3, 조건1)을 차례로 연산하는 작업을 해보시기 바랍니다.

Sumifs 함수에 대한 연산 속도는 실제로 말씀해 주신 것처럼 다를 수 있지만, 함수의 구동 알고리즘에 대해서는 저희도 확인할 수 있는 방법이 없고, 공개되지 않는 자료이기 때문에 정확한 답변을 드리기 어렵습니다.

Excel이라는 프로그램의 경우 사용하시는 PC의 환경(리소스/메모리/여러 Excel 파일 실행)등에 따라서 결과가 달라질 수 있는 부분이기 대문에, 최적화에 대한 답변도 드리기 어렵습니다. (특정 서적등을 Microsoft에서 추천 드리기도 어렵기 때문에, 안타깝지만 이 부분에 대해서는 인터넷/공개된 포럼 등에서 직접 문의하셔서 지원을 받아 보시기 바랍니다.)

제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.

제시해 드린 답변이 도움이 되었기를 바랍니다.

응답이 문제 해결에 도움이 되었다면, 아래에 있는 답변으로 [표시] 버튼을 눌러 주시기 바랍니다. 이는 유사한 증상을 겪는 다른 사용자들에게 도움이 될 수 있습니다.

이 대답이 도움이 되었나요?

댓글 0개 설명 없음

0 추가 답변

정렬 기준: 가장 유용함