2014-11-07 3 views
0

Я использую флажок ContentControl в своем документе MS Word 2013 (а не в Excel!). Теперь я пытаюсь проверить формулу, установлен ли флажок - или нет. Как я могу это сделать?Как я могу получить состояние флажка в форме Word?

Давайте предположим, что имя флажок»является MyCheckbox я попытался проверить состояние с помощью

=MyCheckbox 
=IF(MyCheckbox=TRUE; 1; 0) 
=IF(INT(MyCheckbox)=1; "YES"; "NO") 

Но никто из них не помог мне. Любая помощь приветствуется.

+1

Да, вы правы. Я удалил этот тег. Благодаря –

ответ

1

Вы не можете установить флажок «Контроль содержимого» из «Язык поля» Word, используя «поле» флажка (например, название или тег).

Вы может быть в состоянии сделать это следующим образом: Выберите вкладку флажка, который вы хотите проверить Вставить закладку (назовем его «Check1») Используйте следующие вложенные поля для проверки значения в вашем {=} поля:

{ IF { check1 } = ccbcc 1 0 } 

где вы вставляете проверяемое управление содержимым флажка непосредственно в IF поле вместо текста «ccbcc»

я не знаю синтаксис, который работает с { =} IF.

Однако возможно, что вы столкнетесь с проблемами, если вы сделаете исходный элемент управления флажком неуязвимым. Когда вы это сделаете, копии элемента управления, сгенерированного при выполнении полей {check1} REF, также становятся неуязвимыми, что также может потребоваться рассмотреть.

Единственный способ, которым я знаю, чтобы сделать это, который не требует VBA и т. Д. Во время выполнения, - установить флажок вверх как настроенный элемент управления содержимым, а затем использовать обычный текстовый элемент управления, сопоставленный с тем же элементом/атрибутом в пользовательском XML для сравнения. Это всегда будет иметь «истинный» или «ложный» результат после заполнения XML. Поэтому в этом случае вы можете сравнить свой обычный текстовый элемент с текстом «true». то есть вам все еще нужно поле IF с вложенным управлением содержимым, но только один контроля вместо двух, и вам не нужны закладки:

{ IF thetextcontentcontrol = true 1 0 } 

(где вставив отображенное управление содержимым текста вместо «thetextcontentcontrol»

Все {} должны быть специальные пары поле скобки, которые можно вставить на WIndows Слова с помощью Ctrl-F9.

+0

Да, спасибо, похоже, что использовать VBA проще, чем придерживаться полей ... –

0

Попробуйте MyCheckBox.Value вместо MyCheckbox.

+0

я попытался '= MyCheckbox .Value', который выдает ошибку '' Синтаксис. ' –

+0

' Если CheckBox1.Value = True, то MsgBox (" Флажок установлен ») Конец Если« Работает для меня с использованием Word 2013. – gwhenning

+0

Я не использую VBA, а просто простые формулы в поле. –

Смежные вопросы