2

В шаблонном документе я хочу создать макрос, который при открытии шаблона и извлечении нового документа автоматически вводит имя автора в нижний колонтитул. Это возможно? Я не знаю, как написать макрос, и все инструкции, которые я нашел, меня очень смущают. Раньше я имел возможность создавать макросы автозапуска в очень старой версии Word, но 2010 очень запутанный.

5 ответов5

3

Макрос не нужен для автоматической вставки имени автора. Это можно сделать, используя только шаблон и поле Автор. Сделать это:

  • Откройте новый документ.
  • Добавьте нижний колонтитул в документ (самый быстрый способ - дважды щелкнуть чуть выше нижней части страницы)
  • На ленте « Инструменты верхнего и нижнего колонтитула» нажмите « Быстрые детали», затем « Свойство и автор документа».
  • Сохраните документ как шаблон (.dotx). Не сохраняйте его как обычный документ (.docx).

Чтобы создать новый документ и автоматически получить имя автора, просто дважды щелкните файл шаблона или в окне « Новый документ» выберите « Новый из существующих» и перейдите к нему. Новый документ откроется как файл DOCX, а не как шаблон DOTX. Оригинальное имя автора будет захвачено документом и может быть сохранено как обычный документ. Имя не должно изменяться, если кто-то не откроет нижний колонтитул и явно не обновит поле.

Примечание. Чтобы отредактировать сам шаблон после закрытия, удерживая нажатой клавишу «Shift» , щелкните файл правой кнопкой мыши, затем выберите « Изменить». В противном случае его открытие превратит его в стандартный документ, а не в шаблон.

2-е примечание. Вы можете добавить поля «Свойство документа» в обычный документ DOCX, но обычно он обновляет автора каждый раз, когда документ открывается и сохраняется (т. Е. Захватывает имя того, кто его открывает, а не оригинального автора).

0

Нажмите Alt + F11, и слева вы увидите свой проект и Microsoft Word Objects

Поместите следующий код в ThisDocument в редакторе Visual Basic

Private Sub Document_New()
   With ActiveDocument.Sections(1)
    .Footers(wdHeaderFooterPrimary).Range.Text = ActiveDocument.BuiltInDocumentProperties("Author") & "      " & Now
   End With
End Sub

Закройте редактор VB и сохраните как Word Macro-Enabled Template

0

Если вы добавите вкладку «Разработчик» («Перейти к« Файл »>« Параметры »>« Настроить ленту », затем в разделе« Настройка ленты »и в разделе« Основные вкладки »установите флажок« Разработчик »), вы можете использовать средство записи макросов, чтобы делать то, что вам нужно.

  1. В разделе «Код» выберите «Запись макроса».
  2. Выберите, хотите ли вы, чтобы кнопка или сочетание клавиш запускали ее, и где сохранить созданный макрос.
  3. Запишите свой макрос - что-то вроде этого должно сделать это:

    • Вставить | Нижний колонтитул | Редактировать нижний колонтитул
    • Вставка | Быстрые детали | Свойство документа | Автор
  4. Затем нажмите Остановить запись

Это должно сгенерировать вам макрос, чтобы делать примерно то, что вы хотите. Вам нужно немного поиграться, если вы хотите указать, где в нижнем колонтитуле вы хотите разместить поле Author.

0

Приведенный выше совет пользователя user242332 относительно поля UserName - это путь. В последнее время я создавал много файлов .dotx и экспериментировал с использованием кодов полей, и они потрясающие. Чтобы настроить поле UserName в нижнем колонтитуле, перейдите по адресу : http://office.microsoft.com/en-us/word-help/insert-and-format-field-codes-in-word-2007-HA010338798.aspx

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

0

Назовите макрос "AutoOpen", и он будет запускаться автоматически при каждом открытии документа ... :)

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