2011-05-08 5 views
3

워크 시트 펑크 턴으로 총 2 번 호출되는 모듈에 Excel 함수가 정의되어 있습니다. 그러나 나는 shift + f9를하고 함수에 breakpoint를 두었을 때 나는 약 5 번 두 번 이상 호출된다는 것을 알아 차렸다. 그러나이 함수는 프로그래밍 방식으로 또는 위에서 언급 한 두 셀을 제외한 모든 워크 시트에서 다른 곳에서는 호출되지 않습니다.excel udf가 너무 많이 호출되었습니다.

또한 실행이 내 함수에 도달 할 때 호출 스택을 보면 최상위 호출 인 내 함수 만 보여줍니다. 이 문제의 원인에 대한 도움이 필요하십니까? 감사.

+0

체크 아웃 '의 도움말 섹션에서 Volatile' 방법에 대한 http://www.decisionmodels.com/calcsecretsj.htm를 참조하십시오. 모든 UDF의 기본값은 'TRUE'입니다. 이는 동일한 워크 시트에서 ** 계산이 ** 발생할 때마다 함수가 호출된다는 것을 의미합니다. 어쩌면 이것이 시트에 다른 계산을 퍼포밍하는 것처럼 5 번 발사 한 이유일까요? –

+0

안녕하세요 Remnant, 불행히도 내 기능이 휘발성으로 표시되지 않았습니다. – HelpThis

+0

아마도'Application.Volatile (False)'를 시도 할 것인가? –

답변

3

이에 대한 여러 가지 이유가 있지만 아마도 가장 가능성이 UDF는 계산되지 않은 세포와 호출되는 :
자세한

+0

안녕하세요 찰스, 실제로 제가 참조한 사이트를 읽고 있습니다. 실제로 거기에있는 보물 발견 자입니다. :) – HelpThis

관련 문제