В этом пost, наша цель — предоставить вам 2 способа отображения панели навигации только в одном конкретном документе Word.
Для тех, кто часто использует панель навигации, вы, должно быть, заметили, что она остается для всех документов, открытых в будущем, после ее запуска. Таким образом, чтобы закрыть его, вам придется вручную нажать кнопку «Закрыть». Эта глобальная функция может иногда раздражать, особенно когда мы хотим, чтобы она была открыта только для одного конкретного документа.
Чтобы решить эту проблему, нам нужна помощь макроса Word.
Способ 1: макрос для документов, требующих частого изменения имени и пути
- Во-первых, поскольку нам нужно иметь возможность запускать макрос в конкретном документе, мы должны сначала изменить настройку макроса. Нажмите «Файл», затем «Параметры», чтобы открыть диалоговое окно «Параметры Word». Затем нажмите кнопку «Центр управления безопасностью» и кнопку «Настройки центра управления безопасностью». Затем нажмите «Настройки макросов» и выберите «Включить все макросы». Нажмите «ОК» в обоих полях.
- Теперь нажмите «Alt + F11», чтобы открыть редактор VBA.
- Затем нажмите «ThisDocument» под проектом этого конкретного документа.
- Перейдите на вкладку «Вставка» и выберите «Модуль».
- Затем дважды щелкните модуль и вставьте следующие коды справа:
Sub AutoOpen() ActiveWindow.DocumentMap = True End Sub
Sub AutoClose() ActiveWindow.DocumentMap = False End Sub
- Нажмите кнопку «Сохранить».
- Теперь будет окно сообщения. Нажмите «Нет».
- В окне «Сохранить как» выберите «Макрос с поддержкой макросов Word» в качестве типа сохранения.
- Щелкните «Сохранить».
Теперь у вас будет открыта панель навигации только для определенного документа.
Способ 2: макрос Word для документов с фиксированным именем и путем
- К starВыключите, откройте Word и нажмите «Alt + F11», чтобы вызвать редактор VBA.
- В «Обычном» проекте нажмите «Вставить» и выберите «Модуль».
- По-прежнему дважды щелкните модуль, чтобы открыть область кодирования, и вставьте приведенный ниже макрос:
Sub AutoOpen()
Dim strDocName As String
Dim strDocpath As String
Dim nDocName As Integer
Dim nDocpath As Integer
strDocName = "Sample.docx"
strDocpath = "E:\Temp"
' If the two strings sort equally, Returns 0.
nDocName = StrComp(ActiveDocument.Name, strDocName, vbTextCompare)
nDocpath = StrComp(ActiveDocument.Path, strDocpath, vbTextCompare)
If nDocName = 0 Then
If nDocpath = 0 Then
ActiveWindow.DocumentMap = True
End If
Else
ActiveWindow.DocumentMap = False
End If
End Sub
- Далее нажмите «Сохранить».
Заметки:
- В строке кода «strDocName = «Образец 2.docx» замените «Образец 2.docx» на имя вашего файла.
- В строке кода «strDocpath = «C:\Users\Public\Documents\New folder»» замените «C:\Users\Public\Documents\New folder» на путь к папке, в которой хранится файл. Помните, что в конце нет «\».
Сравнение 2 методов
| методы | Преимущества | Недостатки |
| Способ 1: макрос для документов, требующих частого изменения имени и пути | Изменение имени документа или пути не повлияет на эффект. | 1. Вы должны сохранить документ в формате .docm, что требует еще нескольких шагов.
2. Перед сохранением файла в формате .docm необходимо изменить настройки макроса. 3. Иногда функция работает не очень стабильно. |
| Способ 2: макрос Word для документов с фиксированным именем и путем | 1. Вам не нужно сохранять документ в другом виде.
2. Подходит для документов с фиксированным именем и путем. |
Если вы хотите переместить документ или изменить его имя, вам придется изменить макрос. |
Решение проблем с Word
Мы сталкивались с ошибками Word более или менее в нашем повседневном использовании. И неожиданное приходит без всяких признаков. По этой причине для уменьшения последствий docx повреждение, мы рекомендуем вам заранее иметь при себе известный инструмент восстановления.
Об авторе:
Вера Чен — эксперт по восстановлению данных в DataNumen, Inc., которая является мировым лидером в области технологий восстановления данных, включая поврежденный Excel и pdf ремонт программных продуктов. Для получения дополнительной информации посетите www.datanumen.com





