Можно ли использовать переключатели в Microsoft Word для Mac 2011? Я работаю над формой, которая требует "либо", либо "ответы". Таким образом, флажок будет недостаточно. Я знаю, что они доступны в Windows, но не могу найти вариант в версии для Mac.
1 ответ
Проблема в том, что переключатели в Windows Word являются элементами управления ActiveX, которых нет в Mac Word.
В функции Mac FOrms в Mac Word есть переключатели (см. Меню «Вставка» -> «Объект HTML»), но я не знаю достаточно о них, чтобы помочь, порекомендовать или рекомендовать вам избегать их.
Возможно, самый простой способ получить переключатели на Mac - это создать свою форму, используя пользовательскую форму VBA вместо «онлайн-формы» на поверхности документа.
В прошлом я пытался заставить флажки работать больше как переключатели, используя макрос Exit для проверки состояния и изменения всех полей в "группе". Но проблема в том, что когда вы нажимаете флажок, макрос выхода не обязательно вызывается, поэтому возникает ситуация, когда можно установить несколько флажков в "группе", т.е. они не являются переключателями.
Единственный способ, которым мне удалось это сделать, - это использовать поля MACROBUTTON, несколько закладок и фрагмент VBA. Кнопки не отображаются как обычные поля формы, поэтому пользователь должен щелкнуть их, а не вкладывать их (или дважды щелкнуть, в зависимости от их настроек). Я не использовал это в реальном проекте, т.е. это эксперимент.
Как это устроено.
В качестве эксперимента вставьте некоторые текстовые поля формы в документ.
Для каждого переключателя вставьте поле, подобное этому:
{ MACROBUTTON radiopush O}
или это, чтобы представлять "нажатую" кнопку
{ MACROBUTTON radiopull X}
(Используйте cmd-F9/fn-cmd-F9 для вставки {})
Убедитесь, что нет пробела перед "}"
Я на самом деле использую символ Wingdings 2 153 вместо "O" и символ Wingdings 2 158 вместо "X".
Также вставьте следующие поля:
{ SET pulled "MACROBUTTON radiopush O" }{ SET pushed "MACROBUTTON radiopull X" }
где O и X - это те же символы, которые вы используете в полях MACROBUTTON.
Выберите каждое поле макроклавиш по очереди и вставьте закладку. Используйте первые 4 символа имени закладки, чтобы идентифицировать "Группу", затем используйте оставшуюся часть имени, чтобы уникально идентифицировать кнопку - например, если у вас есть два независимых набора из 3 переключателей, вы можете вызвать их
grp1btn1
grp1btn2
grp1btn3
grp2btn1
grp2btn2
grp2btn3
Выберите все поля и обновите их с помощью F9/fn-F9.
Затем поместите следующий VBA в подходящее место (например, .dotm, к которому прикреплены формы, или сделайте форму .docm и поместите туда VBA).
Sub radiopull()
'MsgBox "pull"
End Sub
Sub radiopush()
'MsgBox "push"
ActiveDocument.Unprotect
strGroup = Left(Selection.Bookmarks(1).Name, 4)
For Each bm In ActiveDocument.Bookmarks
If Left(bm.Name, 4) = strGroup Then
If bm.Name = Selection.Bookmarks(1).Name Then
bm.Range.Fields(1).Code.FormattedText = ActiveDocument.Bookmarks("pushed").Range.FormattedText
Else
bm.Range.Fields(1).Code.FormattedText = ActiveDocument.Bookmarks("pulled").Range.FormattedText
End If
bm.Range.Fields(1).Update
End If
Next
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, noreset:=True
End Sub
Затем защитите форму и попробуйте нажать (возможно, вам нужно будет дважды щелкнуть) кнопки.
Если вы начинаете только с кнопок "O", у вас может быть начальное состояние, когда ни одна кнопка не нажата, но после нажатия одной кнопки ее всегда нужно нажимать.