1

Есть ли способ навсегда удалить выделение из редактируемых областей в защищенном текстовом документе?

Это относится к предыдущему вопросу о блокировке частей документа Word, расположенного здесь:могу ли я заблокировать (или сделать недоступными для редактирования) части документа Word?

Используя это решение, любая редактируемая область выделяется. Вы можете снять флажок «Выделить редактируемую область» на панели «Защитить документ», но если вы сохраните и снова откроете, область будет выделена снова. Документ находится на сетевом диске. Если другой пользователь откроет документ, он также будет выделен.

Можно ли вообще отключить эту подсветку, чтобы при доступе к документу из сети пользователь не видел эту подсветку?

Использование Word 2007

4 ответа4

2

Я полагаю, вам понадобится макрос для этого.
Поскольку я никогда не писал макрос VBA, вот несколько цитат от людей, которые имеют:

Как избавиться от затенения поля формы в Word? :

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

Dim oFF As FormField
'  remove shading
ActiveDocument.FormFields.Shaded = False
' unprotect
If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then
    ActiveDocument.Unprotect
End If
' remove highlighting
For Each oFF In ActiveDocument.FormFields
    oFF.Range.HighlightColorIndex = wdNoHighlight
Next
' re-protect
ActiveDocument.Protect wdAllowOnlyFormFields, NoReset:=True, Password:=""

Еще немного информации из раздела «Изменить цвет», которая обозначает редактируемые разделы :

Нет способа изменить цвет подсветки, используемый Word, чтобы заштриховать редактируемые области. Вы можете программно отключить затенение редактируемых областей с помощью окна.Посмотреть.Свойство ShadeEditableRanges и установка его в False.

Конечно, если вы сделаете это, вы потеряете автоматическое выделение желтым цветом, которое обеспечивает Word. Затем вам нужно было бы написать некоторый код, чтобы самостоятельно выделить диапазоны, которые можно редактировать в документе, например:

Спектр.Заливка.BackgroundPatternColor = Word.WdColor.wdColorGray15

Некоторые проблемы с этим подходом:

1) Если пользователь выбирает весь регион и удаляет его, серый цвет фона будет потерян.

2) Серый фоновые цвета будут печататься при печати документа, поэтому вам придется обработать событие BeforePrint и удалить серые фоновые цвета перед его печатью.

1

Одна альтернатива, которая не требует макросов, - это использовать защищенные разделы с включенным заполнением форм вместо редактируемых диапазонов:

  1. Во-первых, вставляйте непрерывные разрывы разделов вокруг содержимого, чтобы оно оставалось редактируемым.
  2. Нажмите «Ограничить редактирование» на панели инструментов «Просмотр», затем в разделе «Ограничения редактирования» выберите «Заполнение форм».
  3. Нажмите «Выбрать разделы внизу» и выберите все остальные разделы, которые не являются частью вашего редактируемого содержимого.
  4. Нажмите Пуск, обеспечивающий защиту.

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

0

PDF выделил оригинал - В фотошопе я вынул все чернила из "желтых", затем отрегулировал, отрегулировал уровни так, чтобы все, что не совсем темное, стало белым, затем я ненасыщенно удалил пару оставшихся пикселей.

Нам повезло, что в нем не было серых, иначе это была бы борьба.

-1

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .