1

Тема: повторение текста выбранного в комбобоксе

Доброго здоровья всем в любое время суток.Пожалуйста научите как сделать чтобы текст из комбобокса повторялся в другом месте этого же документа  word ?
Например : в комбобоксе список фамилий , при при выборе какой либо фамилии , она повторяется в другом месте документа.Спасибо.

2

Re: повторение текста выбранного в комбобоксе

valsidalv пишет:

Доброго здоровья всем в любое время суток.Пожалуйста научите как сделать чтобы текст из комбобокса повторялся в другом месте этого же документа  word ?
Например : в комбобоксе список фамилий , при при выборе какой либо фамилии , она повторяется в другом месте документа.Спасибо.

Попробуйте так: комбо-бокс выделите как текст заключите в закладку (bookmark). А в нужном месте сделайте кросс-ссылку (cross-reference) на эту закладку. Но такой подход требует обновление полей в документе.

3

Re: повторение текста выбранного в комбобоксе

Попробуйте так: комбо-бокс выделите как текст заключите в закладку (bookmark). А в нужном месте сделайте кросс-ссылку (cross-reference) на эту закладку. Но такой подход требует обновление полей в документе.
Спасибо ,но таким способом у меня копируется сам комбобокс со списком а не выбранная фамилия(обновлене полей сделал )(документ ежедневный)

4

Re: повторение текста выбранного в комбобоксе

Спасибо ,но таким способом у меня копируется сам комбобокс со списком а не выбранная фамилия(обновлене полей сделал )(документ ежедневный)

Вот пример (см. прицеп) - вы это имели в виду?

Post's attachments

combo-box.docx 37.17 Кб, 12 скачиваний с 2014-12-25 

You don't have the permssions to download the attachments of this post.

5

Re: повторение текста выбранного в комбобоксе

В вашем примере комбобокс скопировался из начала документа в нижнюю часть и фамилию надо выбирать . А необходимо чтобы фамилия выбранная в комбобоксе отображалась в нижней части документа , но уже без комбобокса.Спасибо.

Post's attachments

пример.docx 33.44 Кб, 3 скачиваний с 2014-12-25 

You don't have the permssions to download the attachments of this post.

6

Re: повторение текста выбранного в комбобоксе

valsidalv пишет:

В вашем примере комбобокс скопировался из начала документа в нижнюю часть и фамилию надо выбирать . А необходимо чтобы фамилия выбранная в комбобоксе отображалась в нижней части документа , но уже без комбобокса.Спасибо.

Конечно, при таком решении от комбо-бокса не удается избавиться.

Можно, конечно, сделать хитрее: преобразовать документ .docx в документ типа .docm с макросами и обработать ситуацию. Напр.,  сам исходный комбо-бокс и место отображения разметить букмарками с определенным префиксом и при обновлении основного комбо-бокса обходить все поля букмарок, задуманных для этого комбо-бокса и менять в таких букмарках соответствующее свойство. Скажем, по событию, связанному с  основным списком, соответственно менять значение соответствующего Docproperty в документе, а то место, где мы ожидаем отображение изменения - оснастить полем { DOCPROPERTY Name} - с именем этого свойства. В обработчике события предусмотреть и обновление такого поля. Контент-контролы, такие, как комбо-бокс,  легко обработать. Напр., отследить факт ухода фокуса из комбо-бокса можно отловить по событию Document_ContentControlOnExit.

7

Re: повторение текста выбранного в комбобоксе

yshindin пишет:
valsidalv пишет:

В вашем примере комбобокс скопировался из начала документа в нижнюю часть и фамилию надо выбирать . А необходимо чтобы фамилия выбранная в комбобоксе отображалась в нижней части документа , но уже без комбобокса.Спасибо.

Конечно, при таком решении от комбо-бокса не удается избавиться.

Можно, конечно, сделать хитрее: преобразовать документ .docx в документ типа .docm с макросами и обработать ситуацию.

У комбобокса типа ContentControl обнаружился небольшой недочет: у него есть событие по уходу из контрола, но не предусмотрено событие выбора элемента списка.
Но такое событие есть у его старшего брата - комбобокса типа ActiveX.

В примере реализована обработка выбора фамилии из списка типа ActiveX (в VBA-коде его имя ComboBox1).  Наполнение списка значениями выполняется при открытии файла (поэтому состав списка можно изменить). Отображаемые поля {DOCPROPERTY BNAME}, (в документе это подписи) изменяются на значение, выбранное пользователем из списка - это выполняет обработчик события ComboBox1_Click .

Пример размещен во вложении к сообщению.

Post's attachments

combobox_activex_docproperty.docm 42.8 Кб, 7 скачиваний с 2014-12-26 

You don't have the permssions to download the attachments of this post.

8

Re: повторение текста выбранного в комбобоксе

Спасибо большое за помощь! К сожалению данный способ (формат DOCM ) не подходит т.к.
после обновления безопасности 11.12.2014 режим ActiveX отключен, откат или удаление обновления не возможен из-за отсутствия прав администратора .Рецепт от мс офиса по решению проблемы не помог. До этого в принципе такой документ и был сделан.Спасибо за желание помочь.