Как добавить в проект непустой модуль?

Программирование на Visual Basic for Applications
tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Как добавить в проект непустой модуль?

Сообщение tyomitch » 16.07.2007 (Пн) 14:22

Имеется строка с кодом модуля.
Сейчас она сохраняется во временный файл, и вызывается VBProject.VBComponents.Import
Но хочется сделать красиво.
Причём чтоб работало с формами.
Можно так?
Изображение

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Re: Как добавить в проект непустой модуль?

Сообщение Andrey Fedorov » 16.07.2007 (Пн) 15:47

tyomitch писал(а):Имеется строка с кодом модуля.
Сейчас она сохраняется во временный файл, и вызывается VBProject.VBComponents.Import


А без IDE оно разве работать будет?

tyomitch писал(а):Но хочется сделать красиво.
Причём чтоб работало с формами.
Можно так?


Ну я бы все-же копал в сторону ScriptControl. Возможность добавлять модули/функции там есть. Так же ему можно передавать любые параметры, в том числе и форму...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.07.2007 (Пн) 16:03

Andrey, на название раздела обратил внимание? ;-)
Изображение

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 16.07.2007 (Пн) 16:11

tyomitch писал(а):Andrey, на название раздела обратил внимание? ;-)


Ну в проект - совсем просто - есть файл проекта... В него и добавь... :lol:

P.S Я просто пока смысл действия не улавливаю...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.07.2007 (Пн) 16:19

Блин. Нет файла проекта. Это VBA, блин.
Изображение

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 16.07.2007 (Пн) 16:39

tyomitch писал(а):Блин. Нет файла проекта. Это VBA, блин.


А. Ну тогды пардон - давненько я не держал в руках шашечек...

На вскидку - можно еще глянуть методы объекта Module (если это в том же Access)... Но лично не пробовал...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.07.2007 (Пн) 19:45

Э...

Function Add(ComponentType As vbext_ComponentType) As VBComponent
Member of VBIDE.VBComponents


thisworkbook.VBProject.VBComponents.Add(vbext_ct_StdModule).CodeModule.AddFromString "option explicit"
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Re: Как добавить в проект непустой модуль?

Сообщение tyomitch » 16.07.2007 (Пн) 19:52

tyomitch писал(а):Причём чтоб работало с формами.
Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.07.2007 (Пн) 20:28

А я думал, оно так поймёт...
А нельзя, например, в качестве FileName для import указать какую-нибудь трубу, в которую записать текст?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 16.07.2007 (Пн) 21:14

Нельзя, ибо требуется совместимость с Win98, где труб нет :-(
Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.07.2007 (Пн) 21:22

Ещё есть вариант написать свой парсер строки и устанавливать свойства формы через vbcomponent.designer.

Ну и временный файл, да...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 114

    TopList