Форум по VBA и MS Office

Word => Макросы в Word => Тема начата: Irina18 от 29 августа 2017, 10:15

Название: Word: Отображение даты в нескольких контролах после ввода в основном контроле.
Отправлено: Irina18 от 29 августа 2017, 10:15
И снова здравствуйте. Я опять к вам с вопросом. Пробовала сама на основе, ранее приведенных примеров осуществить то, что указано в теме. Почти получилось, но не совсем так как надо.

После первого ввода даты в основном контроле не происходит отображение в других контролах, а происходит только когда меняю дату в основном контроле второй раз.

Пробовала менять выполнение макроса на различные варианты типа (Document_ContentControlBeforeContentUpdate, Document_ContentControlBeforeStoreUpdate и т. д.) успеха не добилась. Посмотрите что не так. Файл во вложение. Всем спасибо.

[вложение удалено администратором]
Название: Word: Отображение даты в нескольких контролах после ввода в основном контроле.
Отправлено: Администратор от 29 августа 2017, 10:44
У вас для запуска макроса используется событие "Document_ContentControlOnExit". Это событие запускается, когда вы выходите из поля, т.е. когда щёлкаете за пределами поля.
Вы в самом начале хотели макрос, который запускается после того, как юзер нажимает клавишу "Tab", чтобы перейти в другое поле.
Значит вам надо выбрать другое событие. Хотя может быть, что для вашего случая нет события.

Когда должен запускаться макрос для этого случая? После того, как вы выбрали дату?
Название: Re: Word: Отображение даты в нескольких контролах после ввода в основном контроле.
Отправлено: Irina18 от 29 августа 2017, 10:52
Да, когда выбрала дату.
Название: Re: Word: Отображение даты в нескольких контролах после ввода в основном контроле.
Отправлено: Администратор от 29 августа 2017, 11:08
В ворде нет события, которое бы запускалось при выборе даты или при изменении в поле.
Вам остаётся или выходить из поля, или можно сделать кнопку для запуска макроса.
Или же что-нибудь придумывать другое, чем использовать "элементы управления содержимым".

Кнопку можно сделать на листе, на ленте, на панели быстрого доступа.
Название: Re: Word: Отображение даты в нескольких контролах после ввода в основном контроле.
Отправлено: Irina18 от 29 августа 2017, 11:16
Кнопочку не надо. Лучше я вставлю обычное поле RTF и будет нормально.