Страница 1 из 1
Форматирование формы в Word
Добавлено: 24 янв 2010, 17:58
Busine2009
Как сделать, чтобы этот код заработал:
Код: Выделить всё
Sub AllControl()
Dim oControl As Control
For Each oControl In UserForm1.Controls
oControl.Height = 100
Next
End Sub
Этот код должен делать высоту всех элементов формы 100.
Re: Форматирование формы в Word
Добавлено: 25 янв 2010, 06:21
AlexEL
Да должен работать.
Просто форму надо перерисовать: UserForm.Repaint
Можно делать и так:
Код: Выделить всё
Sub Вызов_формы()
UserForm.Show
End Sub
' Код в модуле формы
Private Sub UserForm_Initialize()
Dim oControl As Control
For Each oControl In Me.Controls
oControl.Height = 100
Next
End Sub
Re: Форматирование формы в Word
Добавлено: 25 янв 2010, 20:38
Busine2009
AlexEL
Да увеличение происходит, только не в заготовке, а после появления формы. Надо чтобы в самой заготовке были изменения.
Re: Форматирование формы в Word
Добавлено: 25 янв 2010, 21:13
AlexEL
Busine2009 писал(а):AlexELНадо чтобы в самой заготовке были изменения.
Тогда зачем тебе заготовка формы?
Создал, чтобы скучно не было, когда будешь ее макросами изменять?
Удали заготовку и создавай форму и ее компоненты с помощью макросов.
Re: Форматирование формы в Word
Добавлено: 25 янв 2010, 21:16
Busine2009
AlexEL
надо чтобы форма в VBA изменялась, а не после её выполнения.
Re: Форматирование формы в Word
Добавлено: 25 янв 2010, 22:51
AlexEL
Busine2009 писал(а):AlexEL
надо чтобы форма в VBA изменялась, а не после её выполнения.
Доступ к имеющимся в документе формам, модулям, к их коду:
Document.VBProject.VBComponents
Пример добавления формы в активный документ:
Код: Выделить всё
Dim F As VBComponent
Set F = ActiveDocument.VBProject.VBComponents.Add(vbext_ct_MSForm)
F.Name = "Моя_форма"
Изменение элемента формы:
Код: Выделить всё
F.Designer.Controls("TextBox1").Height = 100