функциональность intellisense в пользовательской функции VBA? - PullRequest
4 голосов
/ 01 апреля 2010

В стандартной IDE для VBA intellisense встроен во многие стандартные функции VBA. то есть переменная button для msgbox () дает вам список параметров для отображения окна сообщений. Таким образом, разработчику не нужно запоминать или искать опции каждый раз, когда используется функция.

Можно ли добиться того же для моих пользовательских функций VBA? Это грубый пример, но могу ли я написать что-то вроде:

Public Function DoSomething(X as string)(Options X="Opt1","Opt2") as variant
...

Когда я вызываю эту функцию, я получаю всплывающее окно с указанием параметров для X как Opt1 и Opt2

1 Ответ

8 голосов
/ 01 апреля 2010

Вам нужно будет объявить свои собственные перечисления, а затем определить параметр для ваших функций в качестве этого перечислимого типа.

Public Enum eOptions
   Option1
   Option2
End Enum

public Function DoSomething(ByVal x as string, Byval MyOption as eOptions)

При вызове функции аля это:

Call DoSomething("myValue", Option2)

Вы увидите значения, доступные для второго параметра функции, как «Option1» или «Option2».

...