Сокрытие незаполненных полей в формах Word 2007/2010
Сокрытие незаполненных полей в формах Word 2007/2010
Отвечаю, как и обещал на вопрос Алексея:
Мне надо, чтобы сделанные мною в документе поля заполнялись сотрудником не все, а по выбору. Но при этом распечатываются слова - "Выберите элемент" или "Место для ввода текста".
Можно ли как то скрыть "пустые" поля при печати?
Собственно, идею данного решения я позаимствовал у Cindy Meister в Setting Empty Placeholder Text for a Content Control, и она довольно проста: для того чтобы показывать подстановочный текст (например, для той же фразы "Место для ввода текста"), Word использует специальный стиль, поэтому для сокрытия текста при печати, необходимо установить параметры данного стиля.
Теперь тоже самое, но по шагам:
1. Создадим простейший документ-форму, как это было описано в статье Электронные формы в Microsoft Word 2007 (у меня данный документ не сохранился, поэтому я создам еще более простой).
Попытка распечатать документ приведет вот к такому результату:
Т.е. замещающий текст остался на месте
2. Откроем полный список стилей Word.
Для этого нажать в Ribbon на кнопку:
А затем в окне стилей:
3. В открывшемся списке нужно найти стиль "Placeholder Text" (в русской версии "Замещающий текст"), выделить его и нажать кнопку "Modify..." (следите также чтобы правки были сделаны именно для текущего документа - переключатель "Only in this document" внизу окна):
4. В окне настроек стиля выбрать настройку шрифта:
и указать, что шрифт будет скрытым:
5. Наконец перейти в настройки Word
И на закладке Dispaly установить настройку показа скрытого текста, и проверить, что отключена печать скрытого текста.
В результате при вводе документ будет выглядеть вот так:
а на печати так:
P.S.: Кстати, я был не прав, говоря, что данный способ оставляет незаполненные пространства под поля. При печати поля именно "схлапываются" будто на этом месте ничего нет.
Комментарии 15
Спасибо Михаил. Простое и красивое решение проблемы. Все получилось.
Только встает вопрос - все это будет работать только на одном ком-ре. Или эти изменения сохранятся в теле документа и на другом ком-ре надо только проверить, что отключена печать скрытого текста (по умолчанию это так и есть, только дисплей выключен). Или такую процедуру надо производить на всех ком-ах пользователей, использующих этот документ?
то ответ таков:
1. Пункты по изменению стиля (с 1 по 4) вы делаете для самого документа. Я не даром заострил внимание на 3-м шаге, как это сделать.
2. Пункт 5, увы, нужно сделать для каждого компьютера, на котором вы будете открывать документ (точнее под каждым пользователем, т.к. настройки сохраняются в реестре для пользователя).
Причем, по-умолчанию настройки Word таковы: скрытй текст не печатается, но и не показывается - ваши пользователи просто не увидят полей :(.
Проблему можно нивелировать если вы работаете в сети предприятия и у вас используется Active Directory. В этом случае параметры офиса можно задать с помощью групповых политик. Более подробно смотрите статью на MSDN Обзор групповой политики для Office 2010, а скачать шаблоны для этих политик можно тут Office 2010 Administrative Template files (ADM, ADMX/ADML) and Office Customization Tool download
Надеюсь, это поможет.
Так и предполагал, вопрос задал, чтобы все это знали во избежании недоразумений. Проверил на портабельной версии - да по умолчанию просто не видно.
Это ерунда - Включить одну галочку в параметрах Word (Экран - Всегда показывать эти знаки форматирования на экране - Скрытый текст) по силам любому. У вас инглиш версия, поэтому продублировал.
Такие подробные инструкции как ваша - очень сильно способствуют внедрению электронных форм в жизнь офиса. Доступно всем!!!
Еще хочу добавить, что при создании поля - Место для ввода текста, надо использовать - Вставить элемент управления "обычный текст". Так как использование Вставить элемент управления "форматированный текст" (RTF) приводит к его скрытию (набранного текста) при печати.
Спасибо, попробую при случае поэкспериментировать.
Сам удивился. Это как раз произошло после сокрытия полей по этой методике. Перевел на "обычный текст" и все получилось как написано в вашей публикации.
В принципе "форматированный" текст и не нужен. Иконки стоят рядом (Aa и Aa), видимо случайно выбрал, а потом разбирался куда теряются поля при печати. Может кто то с этим столкнется.
Наталья, здравствуйте.
Откровенно говоря, ни разу не сталкивался с таким. Поэтому попробую предположить, что случилось, в порядке убывания вероятности:
Все остальные варианты (стиль был удален, переименован, ...) выглядят маловероятными - я специально перепроверял, удалить или переименовать встроенный стиль, так, чтобы реально поменялось его отображение всписке невозможно (как минимум для Office 2013).
Наталья, попробуйте перечисленные мною варианты. Если они не возимеют место - напишите мне в личную переписку (на сайте есть такая функция для зарегистрированных пользователей), как можно с вами связаться - попробуем решить проблему.
Жду вашего ответа.
Да, тоже вариант. Единственное, надо иметь в виду:
Михаил, здравствуйте, буду очень Вам благодарна если Вы сможете мне помочь. столкнулась со следующей проблемой:
Сделала защищенный документ для сотрудников, установила параметры текста, что бы при вводе текста был общий стиль.И теперь сами сотрудники не могут изменить в этом документе размер и стиль шрифта. В этом и была задача. Исключить произвол сотрудников менять на свое усмотрение шрифт и размер, который им нравится.
Но возникла проблема, если сотрудник копирует текст с какого-либо источника, и вставляет его в документ (в поля ввода)
шрифт текста остается таким, какой он был в источнике, а соторудник то не может изменить его параметры, так как в документе стоит ограничение. Возможно ли сделать так, чтобы не отключать ограничения в документе, но к вставленному тексту автоматически применялись установленные параметры ???
Анастасия, добрый день.
Навскидку предложу 2 варианта:
Если эти варианты не пройдут, надо будет думать, но с ходу что-то ничего кроме написания макросов на ум не приходит
Добрый день, Михаил.
Отличная статья, очень помогла. Подскажите, а как изменить сам текст "Место для ввода текста" , который является скрытым текстом?
Спасибо.
Илья, добрый день.
Поменять текст можно, например, используя методику, описанную в статье Modify Content Control Placeholder Text.
Если в 2-х словах, то идея в следующем: если мы попытаемся изменить placeholder text находясь в обычном режиме управления content controls, то ничего не выйдет - как только мы начинаем набирать текст в этом поле, контрол переходит в режим "всавка реального текста" и весь placeholder теряется. Чтобы этого не происходило, нужно переключиться в Design Mode (не уверен, но в русской версии это кажется называется Режим дизайна).
В общем:
Если поле у вас "выпадающий список", то нужно будет на такой же текст заменить первый элемент списка
P.S. Попробовал записать видео. Надеюсь, что наглядно
Михаил, спасибо большое. Все получилось!
Михаил, здравствуйте! Спасибо Вам за такую замечательную статью! Хотела спросить, можно ли как-то сделать чтобы при печати места ввода не «Схлопывались»?