이 질문은 된 질문 전에 있지만, 각 시간은 허용 대답은 간단하게 사용하는 기능 설명을 제공하기 위해 사임입니다 Application.MacroOptions
( VBA6 ) ( VBA7를 )하지만 내 문제가 해결되지 않는 있도록이 정보는 실제로 툴팁으로 표시되지 않습니다.
목표
우리 모두가 원하는 것은 어떤 수단 (VBA, VSTO 또는 COM 추가 기능) 으로든 사용자 지정 함수를 정의하고 사용자에게 함수 및 해당 매개 변수에 대한 팝업 / 도구 설명 설명의 이점을 제공하는 것입니다. 인라인 또는 수식 입력 줄의 모든 기본 제공 Excel 함수에 대해 나타납니다.
이러한 요구에 대한 널리 받아 들여지는 대답은 커스텀 함수로는 불가능하다는 것이지만 저는 그 믿음에 도전하고 싶습니다.
문제
현재 내가 본 최고의 방법은 함수 대화 상자 (공식 막대의 fx 버튼)를 불러올 때 함수와 매개 변수 설명이 아래와 같이 나타나도록 함수를 정의하는 것입니다 (종종 위의 MacroOptions 호출 사용).
보시다시피 이것은 많은 매개 변수가있는 복잡한 함수입니다. 사용자가이 "함수 인수"대화 상자와이를 표시하는 방법을 모르고 대신 Excel의 표준 도구 설명에만 익숙한 경우 수식 이름 만 표시되고 추가 도움말은 표시되지 않습니다.
필요한 매개 변수를 올바르게 제공 할 기회가 없습니다. (물론 문서를 읽지 않고는 사용자가 없습니다.)
이제 고급 사용자는 Ctrl+ Shift+ 를 입력 A하면 다음과 같이 자동 완성 된 함수 매개 변수 목록이 부여 된다는 것을 알 수 있습니다 .
그러나 물론 위와 동일한 문제가 있습니다. 표준 엑셀 사용자는 첫 번째 이미지의 기본 동작에만 사용되며 해당 기능을 배우지 않았을 것입니다.
이 시점에서 이것이 왜 충분하지 않은지 명확해야하며 우리는 모든 내장 함수가 가지고있는 것을 원합니다. 사용자에게 함수 사용 방법을 알려주는 인라인 도구 설명입니다.
티즈
처음에는 기본 Excel 응용 프로그램 기능을 제외하고는 이것이 가능하지 않다고 확신했을 것입니다. 추가 기능 및 VBA는 확장 성 기능이며이 도구 설명은 단순히 확장 할 수 없습니다. 그러나이 이론은 Analysis Toolpak 추가 기능의 존재로 인해 어려움을 겪습니다. 물론 Microsoft에서 빌드되었지만 ANALYS32.xll은 VB, C, C ++ 및 C #에서 생성 할 수있는 것과 같은 독립 실행 형 XLL 추가 기능입니다. 아니나 다를까,이 XLL이 응용 프로그램에로드 될 때 기능 이 가능한 네이티브 엑셀 함수 같은 도구 조언을 만드는 :
이 정보가 어떻게 든이 XLL 파일에 인코딩되어 Excel로 전달되는 경우 자체 추가 기능으로 복제 할 수있는 방법이 있습니까? 이제 분석 툴팩에서 진행되는 모든 작업을 역 설계 할 수 있는지 확인하고 디 컴파일에 대해 조금 가르치기 시작할 시점입니다.
당신이 도울 수있는 방법
이 문제에 대해 공개적으로 사용 가능한 모든 정보를 조사했다고 거의 확신합니다. 누군가 내가 이것에 도움이 될 수있는 내가 모르는 것을 알고 있다면, 자유롭게 차임하십시오. 저는 컴파일 된 dll / xll을 리버스 엔지니어링하는 것에 매우 익숙하지 않습니다. 그래서 누군가가 Analysis32.xll의 로컬 복사본을 열고 싶어한다면 사용자 정의 함수 정의로 무슨 일이 벌어지고 있는지 알아내는 데는 많은 의무가 있습니다. 그렇지 않으면 막 다른 골목을 모두 밟고 내가 찾은 것을보고 할 때까지 계속해서이 문제를 조사 할 것입니다.