Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: создание формы Добавлено: 18.02.09 21:06  

Автор вопроса:  Лёха М | Web-сайт: не имею | ICQ: не умею 
Добрый день!

Можно ли в VBA создать форму не прибегая к её предварительному созданию через меню редактора,
т.е. сразу в коде процедуры?

Если можно, прошу подсказать как

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 19.02.09 11:09
  1. Dim frmForm as New Form
  2. frmForm.Show

Ответить

Номер ответа: 2
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #2
Добавлено: 19.02.09 14:24
AgentFire, в VBA это не сработает.

В коде процедуры можно создать окно через Win32 API.

Ответить

Номер ответа: 3
Автор ответа:
 Лёха М



ICQ: не умею 

Вопросов: 6
Ответов: 4
 Web-сайт: не имею
 Профиль | | #3
Добавлено: 14.03.09 01:12
ух ты наконец-то появился ответ тут же на форуме спасибо GDK и mc-black 26.02.09
  1.  
  2. Sub VBA_Extensibility_2()
  3. Dim mVBProject As VBIDE.VBProject
  4. Set mVBProject = ThisWorkbook.VBProject
  5. mVBProject.VBComponents.Add (vbext_ct_MSForm)
  6. 'MsgBox mVBProject.VBComponents.Count & Chr(10) & _
  7.        mVBProject.VBComponents.Item(mVBProject.VBComponents.Count).Name
  8. 'MyFormName = mVBProject.VBComponents.Item(mVBProject.VBComponents.Count).Name
  9. Set mVBProject = Nothing
  10. End Sub


однако !!!
создать в программе экземпляр такой формы да натыкать в неё элементы управления всё равно не получилось.
т.к. что бы создать экземпляр на основе этой формы в программе нужно заранее знать её оригинальное имя
  1.  
  2. Dim MyForm as New Form1


как быть ума не приложу

Ответить

Номер ответа: 4
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #4 Добавлено: 14.03.09 22:28
Если через апи то имя знать ненужно, нужен тока hWnd.

Ответить

Номер ответа: 5
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #5
Добавлено: 15.03.09 11:19
Smith, ты хотя бы читай до конца последний ответ. Чел. собрался сделать через VBE. Скажу, что это возможно, но едва-ли не сложнее, чем на Win32 API.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам