Word для Microsoft 365 Word для Интернета Word 2021 Word 2019 Word 2016 Word 2013 Word 2010 Word 2007 Еще…Меньше
В Word можно автоматизировать часто выполняемые задачи с помощью макросов. Макрос — это набор команд и инструкций, группируемых вместе в виде единой команды для автоматического выполнения задачи.
Чтобы сэкономить время при выполнении часто повторяющихся задач, объедините несколько действий в макрос. Сначала необходимо записать макрос. Затем вы сможете запускать его нажатием кнопки на панели быстрого доступа или с помощью сочетания клавиш. Способ запуска зависит от того, как вы настроите макрос.
-
В меню Вид последовательно выберите пункты Макросы и Записать макрос.
-
Введите имя макроса.
-
Чтобы использовать этот макрос во всех новых документах, проверьте, что в поле Сохранить изменения в указано значение Всех документов (Normal.dotm).
-
Чтобы запускать макрос нажатием кнопки, выберите пункт Кнопка.
-
Щелкните новый макрос (у него будет имя примерно следующего вида: Normal.NewMacros.<имя вашего макроса>), а затем нажмите кнопку Добавить.
-
Нажмите кнопку Изменить.
-
Выберите изображение для кнопки, введите нужное имя и дважды нажмите OK.
-
Теперь необходимо записать все шаги макроса. Выбирайте команды или нажимайте клавиши для каждого шага задачи. Word будет записывать все, что вы щелкаете мышью, и все клавиши, которые вы нажимаете.
Примечание: Во время записи макроса для выделения текста используйте клавиатуру. Макрос не записывает выделения, сделанные с помощью мыши.
-
Чтобы остановить запись, в меню Вид последовательно выберите пункты Макросы и Остановить запись.
На панели быстрого доступа появится кнопка для вашего макроса.
Чтобы запустить макрос, нажмите эту кнопку.
-
В меню Вид последовательно выберите пункты Макросы и Записать макрос.
-
Введите имя макроса.
-
Чтобы использовать этот макрос во всех новых документах, проверьте, что в поле Сохранить изменения в указано значение Всех документов (Normal.dotm).
-
Чтобы запускать макрос с помощью сочетания клавиш, выберите пункт Клавиатура.
-
Введите сочетание клавиш в поле Новое сочетание клавиш.
-
Проверьте, не назначено ли такое же сочетание клавиш какой-либо другой команде. Если такое сочетание клавиш назначено какой-либо другой команде, то попробуйте использовать другое сочетание клавиш.
-
Чтобы использовать этот макрос во всех новых документах, проверьте, что в поле Сохранить в указано значение Normal.dotm.
-
Нажмите кнопку Назначить.
-
Теперь необходимо записать все шаги макроса. Выбирайте команды или нажимайте клавиши для каждого шага задачи. Word будет записывать все, что вы щелкаете мышью, и все клавиши, которые вы нажимаете.
Примечание: Во время записи макроса для выделения текста используйте клавиатуру. Макрос не записывает выделения, сделанные с помощью мыши.
-
Чтобы остановить запись, в меню Вид последовательно выберите пункты Макросы и Остановить запись.
Чтобы запустить макрос, нажмите сочетание клавиш.
Чтобы запустить макрос, нажмите кнопку на панели быстрого доступа, нажмите сочетание клавиш или запустите макрос из списка Макросы.
-
В меню Вид последовательно выберите пункты Макросы и Просмотр макросов.
-
В пункте Имя макроса выберите в списке макрос, который вы хотите запустить.
-
Нажмите кнопку Запустить.
Чтобы сделать макрос в одном документе доступным во всех новых документах, добавьте его в шаблон Normal.dotm.
-
Откройте документ, в котором содержится макрос.
-
В меню Вид последовательно выберите пункты Макросы и Просмотр макросов.
-
Нажмите кнопку Организатор.
-
Щелкните макрос, который вы хотите добавить в шаблон Normal.dotm, а затем нажмите кнопку Копировать.
-
В меню Файл последовательно выберите пункты Параметры и Настроить ленту.
-
В пункте Выбрать команды из выберите пункт Макросы.
-
Выберите нужный макрос.
-
В пункте Настройка ленты выберите вкладку и настраиваемую группу, в которую вы хотите добавить макрос.
Если у вас нет настраиваемой группы, то нажмите кнопку Новая группа. Затем нажмите кнопку Переименовать и введите имя настраиваемой группы.
-
Нажмите кнопку Добавить.
-
Чтобы изменить изображение для макроса и ввести нужное имя, нажмите кнопку Переименовать.
-
Дважды нажмите кнопку OK.
-
На вкладке Разработчик в группе Код нажмите кнопку Макросы.
-
В поле Имя макроса введите имя нового макроса.
Примечание: Если новому макросу присвоить то же самое имя, что и макросу, встроенному в Word, новые макрокоманды будут выполняться вместо встроенных. Чтобы просмотреть список встроенных макросов, выберите пункт Команды Word в списке Макросы из.
-
В списке Макросы из щелкните шаблон или документ, в котором нужно сохранить макрос.
Чтобы макрос был доступен во всех документах, выберите Normal.dotm.
-
Нажмите кнопку Создать, чтобы вызвать редактор Visual Basic.
После запуска редактора Visual Basic могут потребоваться дополнительные сведения о работе с языком Visual Basic для приложений. Для получения сведений выберите в меню Help (Справка) пункт Microsoft Visual Basic Help (Справка по Microsoft Visual Basic) или нажмите клавишу F1.
Вы можете записать последовательность действий или создать макрос с нуля, введя код на языке Visual Basic для приложений в редактор Visual Basic.
Примечание: Чтобы работать с макросами в приложении Office Word 2007, необходимо отобразить вкладку Разработчик.
-
Нажмите кнопку Microsoft Office
, а затем — Параметры Word.
-
Выберите категорию Основные.
-
В группе Основные параметры работы с Word установите флажок Показывать вкладку «Разработчик» на ленте.
Примечание: Лента входит в Пользовательский интерфейс Microsoft Office Fluent.
-
На вкладке Разработчик в группе Код нажмите кнопку Запись макроса.
-
В поле Имя макроса введите имя нового макроса.
Примечание: Если новому макросу присвоить то же самое имя, что и макросу, встроенному в Office Word 2007, новые макрокоманды будут выполняться вместо встроенных. Чтобы просмотреть список встроенных макросов, на вкладке Разработчик в группе Код нажмите кнопку Макросы. В списке Макросы из выберите вариант Команды Word.
-
В списке Макрос доступен для щелкните шаблон или документ, в котором нужно сохранить макрос.
Важно: Чтобы макрос был доступен во всех документах, выберите Normal.dotm.
-
Введите описание макроса в поле Описание.
-
Выполните одно из указанных ниже действий.
-
Начните запись. Чтобы начать запись макроса, не связывая его с кнопкой на панели быстрого доступа или сочетанием клавиш, нажмите кнопку ОК.
-
Создайте кнопку. Чтобы связать макрос с кнопкой на панели быстрого доступа, сделайте следующее:
-
Щелкните кнопке.
-
В группе Настройка панели быстрого доступа выберите документ или все документы, для которых требуется добавить макрос на панель быстрого доступа.
Важно: Чтобы макрос был доступен во всех документах, выберите Normal.dotm.
-
В диалоговом окне Выбрать команды из выберите макрос, который требуется записать, и нажмите кнопку Добавить.
-
Чтобы настроить кнопку, нажмите кнопку Изменить.
-
В поле Символ выберите нужный символ для кнопки.
-
В поле Отображаемое имя введите имя макроса, которое должно отображаться.
-
Чтобы начать запись макроса, нажмите кнопку ОК два раза.
На панели быстрого доступа будет показан выбранный символ. Заданное имя отображается при наведении указателя на символ.
-
-
Назначьте сочетание клавиш. Чтобы назначить макросу сочетание клавиш, сделайте следующее:
-
Выберите пункт Клавиатура.
-
В списке Команды выберите макрос, который требуется записать.
-
В поле Новое сочетание клавиш введите любую последовательность клавиш и нажмите кнопку Назначить.
-
Чтобы начать запись макроса, нажмите кнопку Закрыть.
-
-
-
Выполните действия, которые следует включить в макрос.
Примечание: При записи макроса вы можете с помощью мыши щелкать команды и параметры, но не выделять текст. Для выделения текста необходимо использовать клавиатуру. Дополнительные сведения о выделении текста с помощью клавиатуры см. в статье Выделение текста.
-
Чтобы остановить запись макрокоманд, выберите команду Остановить запись в группе Код.
Изменение сочетания клавиш для макроса
-
Нажмите кнопку Microsoft Office
, а затем — Параметры Word.
-
Выберите команду Настройка .
-
Рядом с полем Сочетания клавиш нажмите Настройка.
-
В списке Категории выберите пункт Макросы.
-
В списке Макросы выберите макрос, который нужно изменить.
-
Щелкните поле Новое сочетание клавиш и нажмите клавиши, которые следует назначить.
-
В поле Текущие сочетания проверьте, не используется ли назначаемое сочетание для выполнения другой задачи.
-
В списке Сохранить изменения в выберите вариант, который соответствует месту, в котором должен запускаться макрос.
Важно: Чтобы макрос был доступен во всех документах, выберите Normal.dotm.
-
Нажмите кнопку Закрыть.
-
На вкладке Разработчик в группе Код выберите пункт Макросы.
-
В списке Имя макроса выберите макрос, который необходимо запустить.
-
Нажмите кнопку Выполнить.
-
На вкладке Разработчик в группе Код нажмите кнопку Макросы.
-
В поле Имя макроса введите имя нового макроса.
Примечание: Если новому макросу присвоить то же самое имя, что и макросу, встроенному в Office Word 2007, новые макрокоманды будут выполняться вместо встроенных. Чтобы просмотреть список встроенных макросов, выберите пункт Команды Word в списке Макросы из.
-
В списке Макросы из щелкните шаблон или документ, в котором нужно сохранить макрос.
Чтобы макрос был доступен во всех документах, выберите Normal.dotm.
-
Нажмите кнопку Создать, чтобы вызвать редактор Visual Basic.
После запуска редактора Visual Basic могут потребоваться дополнительные сведения о работе с языком Visual Basic для приложений. Для получения сведений выберите в меню Help (Справка) пункт Microsoft Visual Basic Help (Справка по Microsoft Visual Basic) или нажмите клавишу F1.
Чтобы быстро выполнять часто повторяющиеся задачи, в классической версии Word вы можете объединить шаги в макросы, а затем запускать их одним щелчком мыши. В Word в Интернете такие задачи придется выполнять вручную.
Если у вас есть Word, нажмите кнопку Открыть в Word, чтобы открыть документ в Word.
Затем следуйте инструкциям для классических версий Word.
Если вы запустите макрос в Word и сохраните документ, вы увидите результаты работы макроса при повторном открытии документа в Word в Интернете.
Нужна дополнительная помощь?
WORD Макросы для сохранения слияния и рассылки в отдельные файлы формата DOC или PDF
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sub ToTranslitDoc() | |
Dim i As Long | |
Dim oMerge As MailMerge | |
Dim oData As MailMergeDataSource | |
Set oMerge = ActiveDocument.MailMerge | |
Set oData = oMerge.DataSource | |
Application.ScreenUpdating = False | |
For i = 1 To oData.RecordCount | |
With oData | |
.FirstRecord = i | |
.LastRecord = i | |
.ActiveRecord = i | |
End With | |
With oMerge | |
.Destination = wdSendToNewDocument | |
.Execute Pause:=False | |
End With | |
With ActiveDocument | |
.SaveAs («d:TMP» & oData.DataFields(«Translit»).Value & «.doc») | |
.Close | |
End With | |
Next i | |
Set oData = Nothing | |
Set oMerge = Nothing | |
Application.ScreenUpdating = True | |
End Sub | |
Sub ToTranslitPdf() | |
Dim i As Long | |
Dim oMerge As MailMerge | |
Dim oData As MailMergeDataSource | |
Set oMerge = ActiveDocument.MailMerge | |
Set oData = oMerge.DataSource | |
Application.ScreenUpdating = False | |
For i = 1 To oData.RecordCount | |
With oData | |
.FirstRecord = i | |
.LastRecord = i | |
.ActiveRecord = i | |
End With | |
With oMerge | |
.Destination = wdSendToNewDocument | |
.Execute Pause:=False | |
End With | |
With ActiveDocument | |
.SaveAs FileName:=«d:TMP» & oData.DataFields(«Translit»).Value & «.pdf», FileFormat:=wdFormatPDF | |
.Close (False) | |
End With | |
Next i | |
Set oData = Nothing | |
Set oMerge = Nothing | |
Application.ScreenUpdating = True | |
End Sub |
Как сохранить макросы в Word 2016?
Рассмотрим способы сохранения макросов в текстовом редакторе Word для дальнейшего использования или отправки другим пользователям.
Со временем у активных пользователей популярного текстового редактора Microsoft Office Word может собраться много макросов, которые не хотелось бы потерять после обновления, переустановки системы или других проблем с оборудованием или программным обеспечением.
Макросами часто нужно поделиться с коллегами по работе, знакомыми и тому подобное.
Все примеры показаны на версии Microsoft Office Word 2016.
Первый способ – это запись макросов в документ, который можно затем отсылать и использовать как шаблон.
Для сохранения макросов в шаблон нужна панель инструментов «Разработчик», которая по умолчанию отключена, поэтому в процессе работы ее нужно будет включить.
Для этого:
Открываем редактор Microsoft Office Word и создаем новый документ.
Нажимаем на «Файл», тогда открываем «Параметры».
Далее открываем «Настроить ленту» и ставим флажок на «Разработчик». Подтверждаем кнопкой «Ок».
Теперь в нашей панели появится вкладка «Разработчик». Открываем ее и нажимаем на кнопку «Шаблон документа».
Находим там кнопку «Организатор» и нажимаем на нее.
Далее открываем вкладку «Макросы». С правой стороны видим список наших макросов. Их с помощью кнопки «Копировать» нужно перенести в левую сторону. После этого можно закрыть окно.
Обратите внимание, что под текстом «Макросы и документы:» должно быть название нашего документа.
Теперь осталось сохранить наш документ с расширением *.docm. Данное расширение и будет вмещать наши добавленные макросы.
Такой документ можно использовать как шаблон, открывая и работая с ним. Все макросы, содержащиеся в данном документе можно будет применять в процессе работы.
При открытии документа с расширением *.docm, Word спросит разрешения на включение их содержимого. Чтобы можно было использовать макросы, нужно данное разрешение предоставить, нажав на кнопку «Включить содержимое».
Второй способ – сохранение файла модуля в окне визуального редактора Microsoft Visual Basic.
Открываем Microsoft Visual Basic с помощью сочетания клавиш Alt + F11 или открыв его с панели «Разработчик» (нужно нажать на кнопку Visual Basic).
В шаблоне Normal (обычно) находим папку Modules. Там можно видеть наши макросы.
Для удобства можно изменить имя. Для этого нужно выделить макрос (щелкнув на его имя левой клавишей мыши) и снизу в свойствах, напротив Name написать новое имя.
Дальше нужно экспортировать макросы. Для этого выделяем мышью макросы, идем в «File → Export File» и указываем место для сохранения файла.
Теперь данный файл можно импортировать на любой компьютер через команду «File → Import File», открыв Microsoft Visual Basic.
Создал несколько свих шаблонов документов MS Word. Каждый из них содержит макросы. Идея такая, что пользователи создают документы на основе этих шаблонов, а макросы обрабатывают документы нужным образом.
Все работает до тех пор пока созданный документ не передается куда-нибудь во вне. Т.к. шаблон хранится в локальной сети, то при открытии документа где-нибудь, где нет доступа к указанному шаблону, документ перестает содержать и макросы.
Можно ли автоматом макросы из шаблона встраивать и в создаваемый документ?
Ответы
Спасибо за ответ.
Возможно я неоднозначно описал проблему. Попробую конкретизировать: у меня есть шаблон Word с поддержкой макросов (Андрей.dot). Создаю документ на основе этого шаблона на своем компьютере («Новый_документ.doc») — макросы работают прекрасно, т.к. хранятся в шаблоне.
Теперь я передаю «Новый_документ.doc» на другой компьютер и вот тут макросы пропадают, т.к. «Новый_документ.doc» ссылается теперь уже на стандартный шаблон «Normal.dot». Ведь мой шаблон (Андрей.dot) стал недоступен.
Мой вопрос: можно ли макросы хранить не в шаблоне, а в создаваемом на его основе документе?
С уважением, Андрей.
- Помечено в качестве ответа Vinokurov Yuriy Moderator 22 ноября 2011 г. 7:52
Все ответы
Добрый день.
Создал несколько свих шаблонов документов MS Word. Каждый из них содержит макросы. Идея такая, что пользователи создают документы на основе этих шаблонов, а макросы обрабатывают документы нужным образом.
Все работает до тех пор пока созданный документ не передается куда-нибудь во вне. Т.к. шаблон хранится в локальной сети, то при открытии документа где-нибудь, где нет доступа к указанному шаблону, документ перестает содержать и макросы.
Можно ли автоматом макросы из шаблона встраивать и в создаваемый документ?
С уважением,
Андрей
- Изменено Жук MVP, Moderator 16 ноября 2011 г. 13:51
Спасибо за ответ.
Возможно я неоднозначно описал проблему. Попробую конкретизировать: у меня есть шаблон Word с поддержкой макросов (Андрей.dot). Создаю документ на основе этого шаблона на своем компьютере («Новый_документ.doc») — макросы работают прекрасно, т.к. хранятся в шаблоне.
Теперь я передаю «Новый_документ.doc» на другой компьютер и вот тут макросы пропадают, т.к. «Новый_документ.doc» ссылается теперь уже на стандартный шаблон «Normal.dot». Ведь мой шаблон (Андрей.dot) стал недоступен.
Мой вопрос: можно ли макросы хранить не в шаблоне, а в создаваемом на его основе документе?
Как перенести настройки Microsoft Word при переустановке Windows или переходе на другой компьютер
Юзабилити, функциональность и настраиваемость – основные преимущества текстового редактора Word от софтверного гиганта Microsoft. Чтобы сделать работу с документами максимально удобной, можно персонализировать ленту меню и панель быстрого доступа, создать свои шаблоны и коллекции стилей форматирования, сформировать свой словарь терминов и т.п. Однако при переустановке Windows или переходе на другой компьютер с частью нажитого добра придётся прощаться.
Столь сложный инструмент, как редактор Word, внутри интерфейса предусматривает лишь экспорт настроенной ленты меню и панели быстрого доступа. Благо, есть способы ручного переноса всех остальных данных. Рассмотрим эти способы для среды Windows.
Описываемые ниже инструкции подходят для Word 2010, 2013, 2016.
1. Лента меню и панель быстрого доступа
Экспорт ленты меню и размещающейся над или под ней панели с кнопками часто используемых функций — это, как упоминалось, единственное, что можно без лишних танцев с бубном извлечь, а затем внедрить в программу, когда та будет установлена уже в среде другой Windows. В меню «Файл» кликаем «Параметры».
Если в новую среду необходимо перенести одну лишь панель быстрого доступа, в левой колонке выбираем её вкладку. А чтобы перенести и панель, и изменённую под свои предпочтения ленту меню, выбираем вкладку «Настроить ленту». Далее в любом из случаев жмём «Импорт-экспорт» и выбираем, соответственно, экспортирование настроек.
Затем указываем путь создания файла с расширением «.exportedUI» . Этот файл храним на отличных от С дисках, помещаем на флешку, загружаем в «облако» или используем любой другой способ переноса данных на другой компьютер. В переустановленной системе или на новом устройстве для импорта настроек снова открываем параметры программы.
И импортируем файл с расширением «.exportedUI» .
Дальнейшие действия предполагают ручной перенос рабочих данных Word, потому текстовый редактор, соответственно, должен быть закрыт. Как добраться к этим данным? Проще всего клавишами Win + R вызвать команду «Выполнить» и ввести:
appdata
После нажатия Enter откроется каталог хранения настроек программ пользовательского профиля «AppData». В нём нам понадобится папка «Roaming», а в ней – подпапка «Microsoft». Все дальнейшие операции будут проводится именно здесь.
2. Пользовательский словарь
Когда мы отдельные слова добавляем в словарь с помощью опции в контекстном меню редактора,
они, естественно, не пополняют словарный запас предустановок Word, а хранятся в отдельном файле Custom.dic . И чтобы на новой Windows при проверке правописания не отвлекаться на формирование своего словаря по новой, его можно перенести. Заходим в папку «UProof», копируем файл Custom.dic в надёжное место и храним его.
В новой среде компьютера открываем эту же папку и переносим сохранённый Custom.dic с заменой исходной редакции.
3. Параметры автозамены
Настроенные нами внутри интерфейса Word параметры автозамены хранятся в файлах с расширением «.acl» . Чтобы их перенести в новую Windows, в папке «Microsoft» открываем подпапку «Office» и копируем в подготовленное место все файлы с этим расширением.
В новой операционной системе, соответственно, возвращаем их назад с заменой исходных редакций.
4. Шаблоны
Настроенный шаблон по умолчанию (открывающийся как любой новый документ) со своей темой оформления, коллекцией стилей форматирования, макетом, колонтитулами, подложкой и прочими индивидуальными вещами также можно перенести в другую среду Windows. В папке «Microsoft» открываем подпапку «Templates» (в Word 2010 эта папка имеет русскоязычное название «Шаблоны») и делаем резервную копию хранящегося там файла Normal.dotm .
В новой среде этот файл возвращаем на место с заменой исходной редакции.
Word предусматривает работу и с другими настраиваемыми образцами документов – личными шаблонами. Их местом хранения по умолчанию в Word 2013 и 2016 значится системная папка «Документы». Следовательно, оттуда шаблоны необходимо переместить на время переустановки Windows, а затем вернуть назад. Или поступить по-другому: в самих настройках редактора прописать путь текущего расположения шаблонов.
В Word 2010 любые отличные от Normal.dotm шаблоны – хоть перенесённые с других компьютеров, хоть сохранённые в процессе работы на текущем устройстве – можно сделать доступными для выбора внутри интерфейса редактора. Для этого их нужно поместить в подпапку «Шаблоны» внутри папки «Microsoft».
Для их задействования при создании нового документа в интерфейсе Word 2010 выбираем «Мои шаблоны».
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
1 |
|
28.07.2010, 05:09. Показов 18911. Ответов 25
Помогите, пожалуйста, написать макрос.
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
28.07.2010, 05:09 |
Ответы с готовыми решениями: Макрос, который вставляет картинку в документ Word Подфиксить макрос по удалению пустых строк в таблице, Word документ Макрос для конвертации содержимого word файла в текстовый документ Макрос, сохраняющий выделенное в тхт с раздел-м табуляции Прошу помочь в доработке макроса, который бы выполнял… 25 |
437 / 144 / 9 Регистрация: 12.01.2009 Сообщений: 678 Записей в блоге: 1 |
|
28.07.2010, 11:23 |
2 |
Помогите, пожалуйста, написать макрос. А что из этого да дынный момент реализовано?
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
28.07.2010, 15:19 [ТС] |
3 |
Всё кроме макроса. То есть есть уже сформированные письма с полями, осталось только их раскидать по папочкам. Ручками никак, потому как писем тыщ 5 будет…
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
30.07.2010, 03:04 [ТС] |
4 |
Эй… Кто-нибудь…. ПОМОГИТЕ!!!!!!!!!!!
0 |
Sasha_Smirnov 5561 / 1367 / 150 Регистрация: 08.02.2009 Сообщений: 4,107 Записей в блоге: 30 |
||||
30.07.2010, 05:18 |
5 |
|||
Всё кроме макроса. То есть есть уже сформированные письма с полями, осталось только их раскидать по папочкам. Открыть, узнать значение поля (республика, край) и — сохранить, указав путь.
И путь, конечно же, формируем из значения поля, где указан регион. Живой пример дайте.
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
30.07.2010, 10:17 [ТС] |
6 |
Итак, живой пример. Слияние в ворде по ФИО происходит. То есть по идее надо чтобы он каждый раз для каждой фамилии, допустим Иванов, брал соответсвующий регион, например, Читинская область, формировал в папке допустим: C:Documents and SettingsПисьма, новую папку под названием Читинская (или другим в зависимости от региона) и сохранял туда документ. Также очень важно чтобы в итоговую папку можно было сохранять не один документ, а много.
0 |
Sasha_Smirnov 5561 / 1367 / 150 Регистрация: 08.02.2009 Сообщений: 4,107 Записей в блоге: 30 |
||||
31.07.2010, 13:38 |
7 |
|||
Результат слияния желательно увидеть. Чтобы я мог, скажем, написать:
Вот как нам эту Коми в документе отыскать?
0 |
Заблокирован |
|
01.08.2010, 08:32 |
8 |
fleurchik,
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
02.08.2010, 10:23 [ТС] |
9 |
Итак, пусть есть файл эксель, где есть два столбца: ФИО Регион письмо выглядит следующим образом: Уважаемый Иванов! — это и есть поле слияния {MERGEFIELD «ФИО»} За небольшой период работы вы успели применить полученные ранее знания на практике, выдавали кредиты. И далее текст письма В Ворде нужен макрос, который создает папку с названием региона к которому относится конкретная фамилия и сохраняет туда письмо. я не знаю уже как ещё объяснить….
0 |
XoFfiCEr исследователь 325 / 104 / 3 Регистрация: 18.03.2010 Сообщений: 1,079 Записей в блоге: 2 |
||||||||
02.08.2010, 15:59 |
10 |
|||||||
Открыть, узнать значение поля (республика, край) и — сохранить, указав путь.
И путь, конечно же, формируем из значения поля, где указан регион. Живой пример дайте. А почему здесь двойные слэши? Вот это бред
и работать не будет.
0 |
Заблокирован |
|
02.08.2010, 21:20 |
11 |
fleurchik,
0 |
Sasha_Smirnov 5561 / 1367 / 150 Регистрация: 08.02.2009 Сообщений: 4,107 Записей в блоге: 30 |
||||
03.08.2010, 02:09 |
12 |
|||
А почему здесь двойные слэши? RTFM
Вот это бред
и работать не будет. Если, господин <Профессор>, вы не магвай, то да. А так работает.
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
03.08.2010, 04:34 [ТС] |
13 |
Заранее большое спасибо!
0 |
исследователь 325 / 104 / 3 Регистрация: 18.03.2010 Сообщений: 1,079 Записей в блоге: 2 |
|
03.08.2010, 07:17 |
14 |
RTFM Если, господин <Профессор>, вы не магвай, то да. А так работает. Это не путь к файлу.
0 |
Заблокирован |
|
03.08.2010, 20:20 |
15 |
fleurchik,
0 |
Sasha_Smirnov 5561 / 1367 / 150 Регистрация: 08.02.2009 Сообщений: 4,107 Записей в блоге: 30 |
||||
04.08.2010, 17:50 |
16 |
|||
Это не путь к файлу. Тем не менее следующий
сохраняет на рабочий стол (произвольно выбранного мною) компьютера 4 файла. См. иллюстрацию. (Но жаль, что мы забалтываем такую полезную тему!) Миниатюры
0 |
исследователь 325 / 104 / 3 Регистрация: 18.03.2010 Сообщений: 1,079 Записей в блоге: 2 |
|
04.08.2010, 17:53 |
17 |
Есть другие способы и я их использую
0 |
5561 / 1367 / 150 Регистрация: 08.02.2009 Сообщений: 4,107 Записей в блоге: 30 |
|
04.08.2010, 18:04 |
18 |
Так поделились бы. А то… смысл выходить на форум — заклеймить?!
0 |
fleurchik 0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
||||
19.08.2010, 02:33 [ТС] |
19 |
|||
Открыть, узнать значение поля (республика, край) и — сохранить, указав путь.
И путь, конечно же, формируем из значения поля, где указан регион. Живой пример дайте. Sasha_Smirnov, пытаюсь приспособить ваш макрос к своим реалиям и возникают следующие проблемы: во-вторых, не цепляет ФИО из поля слияния, соответственно, название документа не получается
0 |
0 / 0 / 0 Регистрация: 27.07.2010 Сообщений: 12 |
|
20.08.2010, 05:22 [ТС] |
20 |
А я все равно не теряю надежду что мне кто-ниубдь ответит)) Нашла тему, по-моему имеющую отношение к моей, но проблема в том, что макрос, описываемый в ней, сохраняет только первую страничку и как-то по-уродски((( Может быть, кто-ниюудь сможет помочь модифицировать код?? Я, честно говоря. ничего не понимаю там…((( http://www.sql.ru/forum/actual… tid=144932
0 |
Всем привет, с вами автор блога scriptcoding.ru. Данная публикация рассматривает сохранение документа в Word с помощью программирования и с помощью рядовых методов системы Windows.
По сути, что тут может быть особенно – нажал на кнопку «Сохранить» или «Сохранить Как» и все, радуйся жизни. Но, так как я очень люблю оперировать, тьфу ты… программировать, то я решил рассмотреть решение данной задачи программным путем.
Из всей объектной модели Word, компонентами, которые предоставляют средства для сохранения в ворде документа, являются объект Documentи коллекция Documents. По сути, у объекта Document есть два метода: Save и SaveAs, которые соответствуют диалоговым окнам «Сохранить» и «Сохранить Как«, а коллекция предоставляет только метод Save. Я уже рассматривал данный объект и коллекцию, но не углублялся в методы Save и SaveAs, а все потому, что у метода SaveAs огромное количество параметров, описание которых тянет на отдельную статью. Вот я и решил собрать все это воедино, и описать.
Объект Document – сохранение в ворде
Save(NoPrompt, OriginalFormat) – Показывает, как в ворде сохранить все файлы, которые входят в коллекцию Documents.
NoPrompt – Если значение true, то Word автоматически сохранит все файлы. Если значение false — Word предложит пользователю сохранить каждый файл, изменившийся с момента последнего сохранения.
OriginalFormat — Определяет, как документы будут сохранены в ворде. Содержит значение константы WdOriginalFormat:
- wdOriginalDocumentFormat — 1 — Оригинальный формат.
- wdPromptUser — 2 – Пользователю будет предложено выбрать формат.
- wdWordDocument — 0 – Формат Microsoft Word.
Если сохранение в ворде ранее не производилось, то диалоговое окно «Сохранить как» запросит у пользователя имя файла.
SaveAs(FileName, FileFormat, LockComments, Password, AddToRecentFiles, WritePassword, ReadOnlyRecommended, EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData, SaveAsAOCELetter, Encoding, InsertLineBreaks, AllowSubstitutions, LineEnding, AddBiDiMarks, CompatibilityMode) – Сохранение файла Word с новым именем или форматом (Диалоговое окно «Сохранить Как»).
FileName – Позволяет задать путь и имя сохраняемого файла в ворде. Если задать только имя файла, то произойдет сохранение в ворд в папке по умолчанию – «Мои Документы». Если документ с таким именем уже существует, то произойдет перезапись без уведомления пользователя.
FileFormat – Задаем формат, в котором сохраняется документ в Word. Значение константы WdSaveFormat.
Константа WdSaveFormatпозволяет задать формат PDF (wdFormatPDF – 17) или XPS(wdFormatXPS — 18). Однако, что бы сохранить в ворде файл в этих форматах, вам придется установить расширение SaveAsPDFandXPS, которое доступно на сайте Майкрософт. Смотрите статью «Как в ворде сохранить документ в PDF формате»
LockComments – Содержит логические значения, true — заблокировать документ для комментариев. По умолчанию используется false.
Password – Пароль для открытия.
AddToRecentFiles – Содержит логическое значение, true — добавить документ в список недавно использовавшихся в меню Файл. По умолчанию используется True.
WritePassword — Пароль для сохранения в ворде изменений.
ReadOnlyRecommended — Содержит логические значения, true – открывать только для чтения. По умолчанию используется False.
EmbedTrueTypeFonts — Содержит логические значения, true – сохранить TrueType шрифты вместе с документом.
SaveNativePictureFormat – Параметр используется, если графики были импортированы из другой платформы (например, Macintosh). true — сохранить в ворд только версию Microsoft Windows импортируемых графиков.
SaveFormsData –true — сохранить в ворд данные, введенные пользователем в форме в виде записи.
SaveAsAOCELetter – Параметр актуален, если документ имеет прикрепленное почтовое вложение. true – сохраняем документ Word как AOCE письмо.
Encoding – Отвечает за кодировку текста. По умолчанию используется системная кодировка. Параметр должен содержать значение константы MsoEncoding.
InsertLineBreaks – Параметр используется, если происходит сохранение документа в Word в виде текстового файла. true — вставить разрывы строк в конце каждой строки текста.
AllowSubstitutions – Актуально, если файл ворд сохраняется в виде текстового файла. Значение true позволяет Word заменить некоторые символы в тексте их упрощенными аналогами. Например, символа авторского права. По умолчанию используется значение False.
LineEnding – Определяет форматирование строк и абзацев в документах, сохраненных в виде текстовых файлов. Может быть одним из следующих значений константы WdLineEndingType:
- wdCRLF — 0 — возврат каретки и строки.
- wdCROnly — 1 — Возврат только каретки.
AddBiDiMarks – true — добавить управляющие символы в выходной файл.
CompatibilityMode — Режим совместимости, который Word2010 использует при открытии документа. Значение константы WdCompatibilityMode:
- wdCurrent — 65535 — Совместимость режим эквивалентен последней версии Microsoft Word.
- wdWord2003 — 11 — Word2010 введен в режиме, который наиболее совместим с Word2003.
- wdWord2007 — 12 — Word2010 введен в режиме, который наиболее совместим с Office Word2007.
- wdWord2010 — 14 — Word2013 введен в режиме, который наиболее совместим.
- wdWord2013 — 15 — По умолчанию. Все функции Word 2013 включены.
Если данный параметр отсутствует, то принимается значение 0 – сохраняется текущий режим совместимости.
Коллекция Documents – как в ворде сохранить документ
Save(NoPrompt, OriginalFormat) – Метод выполняет ту же функцию, что и Save объекта Document, только для коллекции Documents.
Хорошо, с теорией закончили, теперь привожу два примера программного кода на языке VBScript и JScript, котрые создают новый документ, вставляют в него форматированный текст, содержащий информацию о сервере сценариев Windows Script Host и сохраняют в ворде данный документ в текущем каталоге (каталог, откуда был произведен запуск сценария).
Программный код на языке VBSCRIPT:
' ---------------------------------------------------------------------------- ' Сохранение документа в Word ' SaveAs.vbs ' ---------------------------------------------------------------------------- Option Explicit dim oWord, oDoc, oSel, oFont, oShell, CurDir set oWord = WScript.CreateObject("Word.Application") set oShell = WScript.CreateObject("WScript.Shell") set oDoc = oWord.Documents oDoc.Add() set oSel = oWord.Selection oWord.Visible = True set oFont = oSel.Font CurDir = oShell.CurrentDirectory 'текущая папка with oFont .Size = 20 .Name = "Times New Roman" .Bold=true .Colorindex=2 end with oSel.TypeText "как в ворде сохранить документ" ' word сохранение файла with oFont .Size = 12 .Bold=false .Colorindex=0 end with With oSel .TypeParagraph .TypeParagraph End With With WScript call TXInsert("Name: ", .Name & "") call TXInsert("FullName: ", .FullName & "") call TXInsert("ScriptName: ", .Name & "") call TXInsert("ScriptFullName: ", .FullName & "") call TXInsert("Path: ", .Path & "") call TXInsert("Version: ", .Version & "") call TXInsert("Application: ", .Application & "") call TXInsert("Timeout: ", .Timeout & "") call TXInsert("BuildVersion: ", .BuildVersion & "") End With oDoc(1).SaveAs CurDir & "WscInfo_vbs.doc", 0 ' сохранение в ворде Sub TXInsert(a, b) With oSel oFont.Bold=true .TypeText a .EndOf oFont.Bold=false .TypeText b .TypeParagraph End With End Sub
Программный код на языке JSCRIPT:
// ---------------------------------------------------------------------------- // Сохранение документа в Word // SaveAs.js // ---------------------------------------------------------------------------- var oWord1, oDoc1, oSel1, oFont1, oShell1, CurDir1; oWord1 = WScript.CreateObject("Word.Application"); oShell1 = WScript.CreateObject("WScript.Shell"); oDoc1 = oWord1.Documents; oDoc1.Add(); oSel1 = oWord1.Selection; oWord1.Visible = true; oFont1 = oSel1.Font; CurDir1 = oShell1.CurrentDirectory; //текущая папка with(oFont1){ Size = 20; Name = "Times New Roman"; Bold=true; Colorindex=2; } oSel1.TypeText("как в ворде сохранить документ"); // word сохранение файла with(oFont1){ Size = 12; Bold=false; Colorindex=0; } with(oSel1){ TypeParagraph(); TypeParagraph(); } with(WScript){ TXInsert1("Name: ", Name + ""); TXInsert1("FullName: ", FullName + ""); TXInsert1("ScriptName: ", Name + ""); TXInsert1("ScriptFullName: ", FullName + ""); TXInsert1("Path: ", Path + ""); TXInsert1("Version: ", Version + ""); TXInsert1("Application: ", Application + ""); TXInsert1("Timeout: ", Timeout + ""); TXInsert1("BuildVersion: ", BuildVersion + ""); } oDoc1(1).SaveAs(CurDir1 + "\WscInfo_js.doc", 0); // сохранение в ворде function TXInsert1(a, b){ with(oSel1){ oFont1.Bold=true; TypeText(a); EndOf(); oFont1.Bold=false; TypeText(b); TypeParagraph(); } }
И так, с программированием закончили, теперь можно приступить к разбору программного кода. Обратите внимание, что в примере для JSCRIPT я изменил имена переменных, добавив к ним единицу.
В самом начале происходит подключение различных классов и коллекций, которые позволяет подключить объектную модель Word, и создать новый документ. Далее следует объявление переменной CurDir, она будет хранить путь к текущему каталогу, именно в этот каталог произойдет сохранение документа в ворде. Доступ к текущему каталогу осуществляется через класс WScript.Shell – смотрите статью «Объект WScript.Shell метод ExpandEnvironmentStrings и свойство CurrentDirectory — Переменные среды Windows и текущий каталог«.
Далее с помощью класса Font – статья «Объект Word Font — параметры форматирования шрифта«, происходит настройка параметров текста: цвет, размер и так далее. После с помощью метода TypeText класса Selection происходит вставка фразы «как в ворде сохранить документ«, данная фраза также будет отформатирована: жирный шрифт и увеличенный размер символов. После мы дважды вставляет параграф – метод TypeParagraph.
Следующим этапом является использование несколько раз процедуры TXInsert, который будет передаваться два параметра: две текстовые строки. Все происходит так, что процедура вставляет в документ параметры свойств класса WScript – имя свойства и его значение.
После всей проделанной работы происходит вызов метода SaveAs, которые отвечает за сохранение файла Word. В нашем случае, в сценарии на языке VBSCRIPT произойдет сохранение документа в ворде под именем «WscInfo_vbs.doc«, а в сценарии на языке JSCRIPT – сохранение файла в ворде под именем «WscInfo_js.doc«