Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Visual Basic Новый топик    Ответить
 Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
Здравствуйте.
К примеру, имеется некоторая форма с графическим интерфейсом, ну то есть кнопки, поля, еще что нибудь, сделанная в другом языке программирования. Просто форма, без кода. И есть форма, сделанная в vba, на которой есть кнопка. Возможно ли сделать так, чтобы нажав на эту кнопку, появилась раннее описанная форма? И если да, то можно ли , скажем на кнопку, этой формы подключить код, но уже написанный на vba ?
Я прочитал про файлы ресурсов , но честно говоря не очень там понял, и речь идет только о курсорах, иконках и т.д.
12 сен 21, 19:07    [22370829]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 9821
DLL

Но честно говоря, по Вашему описанию ничего не понятно. Что такое "просто форма, без кода", нафига она такая нужна (без кода), в чем ее создавали и так далее и тому подобное.

Сообщение было отредактировано: 13 сен 21, 07:05
13 сен 21, 07:13    [22370907]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3074
Damir_85,
думаю, что в том виде, в котором Вы описали, возможности нет
посмотрите здесь VBA Excel. Программное создание формы
13 сен 21, 09:55    [22370956]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
Leonid Kudryavtsev
DLL

Но честно говоря, по Вашему описанию ничего не понятно. Что такое "просто форма, без кода", нафига она такая нужна (без кода), в чем ее создавали и так далее и тому подобное.

Ну то есть создается чисто интерфейс , кнопки, поля и т.д. Это я , например, могу сделать в Дельфи. А на кнопки не назначается никакое событие. Это делается чтобы не работать с объектами, ну пусть того же Excel в Дельфи, а работать уже с ними в vba. От Дельфи нужна просто форма, т.к. палитра компонентов там намного богаче, и можно использовать различные стили тех же кнопок, полей, задать полупрозрачность , например. В самом vba работать так с интерфейсом не очень удобно. Кстати, я видел много плагинов, которые написаны целиком на другом языке программирования, не на vba, а потом через установку как то появляются кнопки в Excel вызова этого плагина, появляются формы при нажатии на эту кнопку. Не знаете, как реализуется такое?
13 сен 21, 12:18    [22371062]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
HandKot
Damir_85,
думаю, что в том виде, в котором Вы описали, возможности нет
посмотрите здесь VBA Excel. Программное создание формы

нет, немножко не то)
13 сен 21, 12:18    [22371063]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
и если через DLL то как вызывается форма?
13 сен 21, 12:20    [22371064]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
MX-9
Member

Откуда: LIBAVA
Сообщений: 528
Damir_85,
У нас так :
В ячейки ексцел листа вбиваются текстовые строки - директивы для построения форм, и микропрограмки, задающие реакцию формы на клик. Это все одна длинная текстовая строка в одной ячейке. Есть механизм дублирования таких ячеек по любому направлению, или точечно, на любой участок листа - хоть миллион дубликатов. С вариациями.
Этот лист при старте отображается на своего двойника в параллельной Вселенной - в системе MUMPS (Cache - Iris ). Там очень быстро выполняются все расчеты, и обратно в ексцель в ту же секунду летит заполненный расчетными данными лист, и, уже более точные, директивы на построение кнопок - списков - рисунков и т д . Ексцел отрисовывет сложнейший интерфейс с миллионом кнопок и переходит в режим ожидания дальнейших действий пользователя.
Листы в обоих Вселенных синхронизированы в обе стороны - любое событие там или здесь мгновенно отображается другой стороне.
Часть кнопок может быть скрыта - они появятся по клику на ячейку - чтобы не слишком загромождать экран.
Получается, что ексцель только рисует и принимает клики и инфу, а все остальное очень быстро, без ограничений по размерности кубов, считает его надежный товарищ MUMPS в своем параллельном виртуальном невидимом ексцел-двойнике.
На этой технологии у нас в Латвии работает аналог бух программы 1-С и много чего еще. С 2005 года.
https://github.com/mx-alex/MX
если интересно - пишите - установим на Вашем компе или в сети.
13 сен 21, 22:32    [22371465]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
big-duke
Member

Откуда:
Сообщений: 6813
Damir_85,

можно посмотреть в сторону event-based communication
14 сен 21, 10:21    [22371615]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
Спасибо за ответы.
Буду дальше смотреть, натолкнулся также на технологию OLE, ныне переименованную в ActiveX. Может оттуда можно форму как компонент внедрить.
14 сен 21, 14:53    [22371752]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 9821
Damir_85,

Можно, но для этого форма должна быть не "формой без кода", а полноценным компонентом
14 сен 21, 18:54    [22371878]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 7657
а пачему на ВБА? На павершеле + XAML много чего можно.
14 сен 21, 19:00    [22371880]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Damir_85
Member

Откуда:
Сообщений: 279
Relic Hunter,

ну у меня код на вба просто
14 сен 21, 19:04    [22371882]     Ответить | Цитировать Сообщить модератору
 Re: Передать форму в vba  [new]
Eolt
Member

Откуда:
Сообщений: 1857
Damir_85
Здравствуйте.
К примеру, имеется некоторая форма с графическим интерфейсом, ну то есть кнопки, поля, еще что нибудь, сделанная в другом языке программирования. Просто форма, без кода. И есть форма, сделанная в vba, на которой есть кнопка. Возможно ли сделать так, чтобы нажав на эту кнопку, появилась раннее описанная форма? И если да, то можно ли , скажем на кнопку, этой формы подключить код, но уже написанный на vba ?
Я прочитал про файлы ресурсов , но честно говоря не очень там понял, и речь идет только о курсорах, иконках и т.д.


Да без проблем это можно сделать.
15 сен 21, 00:02    [22371964]     Ответить | Цитировать Сообщить модератору
Все форумы / Visual Basic Ответить