Используя документ MS Word, я использую пользовательскую форму для персонала, чтобы выполнить оценку. Этот документ будет заполнен многочисленными пользователями (более 200) в разное время.
У меня хорошо работают форма и документ, однако я пытаюсь скрыть документ, но сохраняю показанную пользовательскую форму, чтобы уменьшить беспорядок и избежать маскировки других приложений, когда пользовательская форма находится в фокусе.
Когда сотрудник открывает документ Word, автоматически открывается пользовательская форма:
Private Sub Document_Open()
Dim myForm As frmAssessment1
Set myForm = frmAssessment1
myForm.Show (0)
End Sub
Когда открывается пользовательская форма:
Private Sub UserForm_Initialize()
'This defines tab 0 will display.
Me.MultiPage1.Value = 0
'This hides MS Word but remains open in the background.
Application.Visible = False
Dim question1 As String
'Populates the combobox for the Team Number selection_
' with an array (currently 1-30).
cmbTeamNum.List = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
'Assigns the text range of the defined bookmark ("x") to a variable
question1 = ActiveDocument.Bookmarks("question1").Range.Text
'Assigns each variable to the label caption field.
With Selection
lblQ1.Caption = question1
End With
End Sub
Application.Visible = False
работает для меня, кроме показа отсутствия Word (или пользовательской формы) на панели задач, что, как я ожидаю, будет проблемой, поскольку у каждого пользователя будет открыто несколько других приложений, и, вероятно, некоторые из них "потеряют" 'пользовательская форма.
Я пытался использовать ActiveDocument.WindowState = wdWindowStateMinimize
, хотя, поскольку слово не скрыто, это приводит к тому, что документ оказывается в фокусе, когда активна пользовательская форма, что может маскировать другие используемые приложения и ухудшать работу пользователя.
Кроме поиска метода WindowState
, я не обнаружил никаких других методов для достижения того, что мне нужно, и не нашел способа создать кнопку / значок на панели задач для пользовательской формы (хотя там много информации для Excel ).
Правильно ли я сказал: не существует способа только показывать пользовательскую форму и по-прежнему иметь кнопку / значок на панели задач - ИЛИ - нет способа создать значок на панели задач для пользовательской формы?
Если я не прав, как мне этого добиться?