Можно ли нажать «кнопку» WinForms из электронной таблицы Excel (VBA)? - PullRequest
3 голосов
/ 06 июля 2010

Трейдеры ленивы и не хотят переключать приложения для нажатия кнопок.Когда они нажимают кнопку в Excel, это должно быть то же самое, что и нажатие другой кнопки в моем приложении WinForms (которое открывает диалоговое окно).Выполнимо?

Ответы [ 2 ]

1 голос
/ 06 июля 2010

Да.

Вы должны поместить свою функциональность в DLL-библиотеку [ComVisible(true)] и добавить ссылку на нее в VBA.

В качестве альтернативы, вы можете написать надстройку Excel в C #.

0 голосов
/ 06 июля 2010
  1. Напишите COM-сервер, который взаимодействует с приложением WinForms, используя механизм межпроцессного взаимодействия на ваш выбор
  2. Добавьте кнопку Excel на лист
  3. Напишите несколько VBA для вызоваCOM-сервер

Было бы неплохо представить COM-объект непосредственно из приложения WinForms таким образом, чтобы вы могли вызывать его через функцию VBA GetObject.Однако я не вижу очевидного способа представить объект в таблице запущенных объектов COM из .NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...