Я программирую надстройку vsto в сочетании с надстройкой автоматизации в VB.NET с использованием MS Visual Studio 2008.
Надстройка автоматизации активирована в Excel и зарегистрирована в системе. в основном, надстройка автоматизации работает очень хорошо, когда вы вызываете функцию с
"=<function-name>(<argument1>;<argument2>;...;<argument-n>)"
, записав его в ячейку Excel или используя мастер функций.
Надстройка vsto используется для запуска через командную кнопку оконной формы, где пользователь может вводить требуемые аргументы. Если пользователь закончил, в построенную ячейку будет записана строка, похожая на приведенный выше пример.
проблема, с которой я борюсь, это когда пользователь запускает Excel, просто используя форму окна для генерации строки и нажимая «ОК», чтобы заполнить ячейку ею, Excel пытается найти причину функции «= "в камере, но не найти его.
В ячейке наконец-то появляется Name?
, потому что после просмотра списка функций мастера моя зарегистрированная функция исчезла (кстати, надстройка все еще находится в списке «extra-> add-ins» и также загружается снова после следующего запуска Excel). )
Но с другой стороны, если пользователь сначала использует мастер функций, чтобы получить значение функции, набирает его на ячейку на руку или даже просто открывает мастер функций и закрывает его сразу после открытия без использования функции, мои окна - сгенерированная форма строки работает.
Событие onButtonClick выполняет следующий пример кода:
Me.Application.ActiveCell.Value = "=FUNCTION(""value1"";""value2"")"
Итак, теперь мой вопрос: почему функция автоматизации исчезает, когда пользователь просто сначала использует генератор строк?
Несколько советов или даже решение моей проблемы было бы очень приятно.
Привет Мартин