Vba объединить документы word в один

In this article, we are glad to share with you 2 ways to quickly merge multiple Word documents into one via VBA.

In Word, there is the default built-in feature to help user combine or merge several documents into one. Details are explained in this article: How to Combine & Merge Multiple Word Documents into OneMerge Multiple Word Documents into One

With that method, you have to make a couple of clicks and the contents of next document always come right after that of the previous one. Therefore, we want to offer you quicker ways to do so.

Method 1: Merge Selected Documents into One

  1. First and foremost, create a new blank document.
  2. Trigger VBA editor in Word by pressing “Alt+ F11”.
  3. Next click “Normal”.
  4. Then click “Insert”.
  5. And choose “Module”.Click "Normal"->Click "Insert"->Click "Module"
  6. Double click on new module to open the editing space.
  7. Paste the following macro there:
Sub MergeMultiDocsIntoOne()
  Dim dlgFile As FileDialog
  Dim nTotalFiles As Integer
  Dim nEachSelectedFile As Integer

  Set dlgFile = Application.FileDialog(msoFileDialogFilePicker)
 
  With dlgFile
    .AllowMultiSelect = True
    If .Show <> -1 Then
      Exit Sub
    Else
      nTotalFiles = .SelectedItems.Count
    End If
  End With
 
  For nEachSelectedFile = 1 To nTotalFiles
    Selection.InsertFile dlgFile.SelectedItems.Item(nEachSelectedFile)
    If nEachSelectedFile < nTotalFiles Then
      Selection.InsertBreak Type:=wdPageBreak
    Else
      If nEachSelectedFile = nTotalFiles Then
        Exit Sub
      End If
    End If
  Next nEachSelectedFile
End Sub
  1. Next click “Run” or hit “F5”.Paste Macro->Click "Run"
  2. Now in “Browse” window, select multiple files by pressing “Ctrl” and click “OK”.Select Files->Click "OK"
  3. Then all contents in selected files will be pieced together in the new document, with texts of each document starting on a new page.

Note:

As we mentioned, this macro puts texts of each document on a new page. But if you need them to be one after another, you can alter some code lines in the macro. Just find line “If nEachSelectedFile < nTotalFiles Then”, the delete it and the next six lines as well.

Method 2: Merge All Documents in a Folder into One

In case you have a folder of files to be combined, then this macro shall work beautifully.

  1. To start off, install and run macro as described in method 1.
  2. Then replace macro with this one:
Sub MergeFilesInAFolderIntoOneDoc()
  Dim dlgFile As FileDialog
  Dim objDoc As Document, objNewDoc As Document
  Dim StrFolder As String, strFile As String
 
  Set dlgFile = Application.FileDialog(msoFileDialogFolderPicker)
 
  With dlgFile
    If .Show = -1 Then
      StrFolder = .SelectedItems(1) & ""
    Else
      MsgBox ("No folder is selected!")
      Exit Sub
    End If
  End With
 
  strFile = Dir(StrFolder & "*.docx", vbNormal)
  Set objNewDoc = Documents.Add
 
  While strFile <> ""
    Set objDoc = Documents.Open(FileName:=StrFolder & strFile)
    objDoc.Range.Copy
    objNewDoc.Activate
    With Selection
      .Paste
      .InsertBreak Type:=wdPageBreak
      .Collapse wdCollapseEnd
    End With
 
    objDoc.Close SaveChanges:=wdDoNotSaveChanges
 
    strFile = Dir()
  Wend
 
  objNewDoc.Activate
  Selection.EndKey Unit:=wdStory
  Selection.Delete
End Sub
  1. Run the macro by clicking “Run”.
  2. Next you see “Browse” window open. Select the folder where you store all documents. And click “OK”.

Similarly, texts of each document starts on a new page. To make them stick together one after another, find and delete code line “.InsertBreak Type:=wdPageBreak”.

Protect Your Word Document Properly

One of the best ways to protect your Word documents is to back them up on a regular basis. With backups in hand, you will never have to fear the loss of data. Besides, it’s also advisable to get a tool to repair docx if any of them shall be damaged.

Author Introduction:

Vera Chen is a data recovery expert in DataNumen, Inc., which is the world leader in data recovery technologies, including damaged Excel and pdf repair software products. For more information visit www.datanumen.com

Иногда нам может потребоваться объединить несколько документов в один, когда вы используете приложения Microsoft Word. В Word вы можете объединить несколько документов Word в один одним из следующих сложных способов:

  • Объединяйте несколько документов один за другим с помощью функции «Вставить текст из файла»
  • Массовое объединение нескольких документов с помощью VBA
  • Объединяйте несколько документов одновременно с Kutools for Word
  • Объединяйте несколько документов один за другим с помощью функции копирования и вставки

Объедините несколько документов в один с помощью функции «Вставить текст из файла»

Вы можете объединить несколько документов в один, используя Текст из файла в Word, но при этом вы потеряете формат документов после объединения.

1. Создайте новый документ Word, поместите объединенные документы, а затем нажмите Вставить > объект > Текст из файла. Смотрите скриншот:

2. В открывшемся диалоговом окне «Вставить файл» (1) откройте папку с документами, которые вы собираетесь объединить; (2) выберите документы, которые вы хотите объединить; а потом (3) нажмите Вставить кнопка. Смотрите скриншот:

Функции: Держа Ctrl клавиша, вы можете выбрать несколько документов, щелкая их по одному; держа Shift клавишу, вы можете выбрать несколько смежных документов, щелкнув первый и последний.

3. Если документы, которые необходимо объединить, сохранены в разных папках, повторите шаги 1-2, указанные выше, по мере необходимости.

Внимание: Вы не можете упорядочить документы в объединенном файле, иначе вы будете вставлять их по одному.

Быстрое объединение нескольких документов Word из множества папок в большом количестве в указанном порядке

Kutools for Word выпускает фантастический идти функция, помогающая пользователям быстро объединить несколько документов Word из многих папок. Эта функция не только сохранит исходный формат документов в объединенном файле, но и объединит документы в указанном вами порядке.

диалоговое окно слияния объявлений


Объедините несколько документов в один с помощью VBA

Кроме того, вы можете использовать VBA для объединения нескольких документов в один в Word.

1. Переместите все объединяемые документы Word в одну папку.

2. Переименуйте документы Word с помощью ряда последовательных имен. (1) Щелкните документ правой кнопкой мыши и выберите Переименовывать из контекстного меню, а затем введите новое имя, например Part1; (2) Повторите, чтобы переименовать другие документы. Смотрите скриншот:

3. Дважды щелкните, чтобы открыть документ, который вы поместите в начало объединенного файла.

4, нажмите Alt + F11 вместе, чтобы открыть окно Microsoft Visual Basic для приложения.

5. Нажмите Вставить > Модули, а затем вставьте ниже код VBA в новое окно модуля;

VBA: объединить несколько документов в Word

Sub MergeDocuments()
Application.ScreenUpdating = False
MyPath = ActiveDocument.Path
MyName = Dir(MyPath & "" & "*.docx")
i = 0
Do While MyName <> ""
If MyName <> ActiveDocument.Name Then
Set wb = Documents.Open(MyPath & "" & MyName)
Selection.WholeStory
Selection.Copy
Windows(1).Activate
Selection.EndKey Unit:=wdLine
Selection.TypeParagraph
Selection.Paste
i = i + 1
wb.Close False
End If
MyName = Dir
Loop
Application.ScreenUpdating = True
End Sub

Внимание: Этот VBA может объединять только документы Word с расширениями файлов docx. Если вам нужно объединить документы (.doc), замените DOCX в коде MyName = Dir (MyPath & «» & «* .docx») в док.

6.Щелкните Run или нажмите F5 ключ для применения VBA.

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


Объединяйте несколько документов в один документ и сохраняйте формат с помощью Kutools for Word

После того, как вы установили Kutools for Word, вам не нужно создавать новый пустой документ или помещать документ в ту же папку. С участием идти Kutools, вы можете быстро объединить несколько документов в один в Word. Пожалуйста, сделайте следующее:

Kutools for Word это удобная надстройка, облегчающая вашу работу и расширяющая возможности обработки текстовых документов. Бесплатная пробная версия для 60 дней! Получи это сейчас!

1. Нажмите Кутулс Плюс > идти. Смотрите скриншот:
doc объединить документы 01

2. В открывшемся диалоговом окне «Объединить документы» добавьте документы, которые вы хотите объединить: (1) Нажмите Добавить файлы кнопка; (2) В диалоговом окне Обзор откройте папку, содержащую документы, которые вы хотите объединить; (3) проведение Ctrl or Shift ключ для выбора этих документов; а потом (4) нажмите OK кнопка. Смотрите скриншот:

Функции:
(1) Если вам нужно объединить документы, которые сохранены в разных папках, повторите этот шаг, чтобы добавлять их один за другим;
(2) Вы также можете добавить все документы, сохраненные в одной папке, с помощью Add Folder кнопку.

3. Теперь вы вернетесь в диалоговое окно «Объединить документы», пожалуйста. (1) заказать эти документы Переместить вверх и Переместить вниз пуговицы; (2) указать перерыв между документами из Перерыв между документами раскрывающийся список; а потом (3) нажмите идти кнопка. Смотрите скриншот:

Теперь все указанные документы Word объединены в новый документ, как показано ниже:
результаты слияния объявлений v8.9

Примечание: К вашему сведению, исходное форматирование всех объединенных документов зарезервировано в объединенном результате.

Конечно, вы можете сначала открыть все документы Word, а затем объединить их вручную путем копирования и вставки.

Просмотр и редактирование нескольких документов Word с вкладками в Firefox, Chrome, Internet Explore 10!

Возможно, вы знакомы с просмотром нескольких веб-страниц в Firefox / Chrome / IE и возможностью переключения между ними, легко щелкая соответствующие вкладки. Здесь вкладка Office поддерживает аналогичную обработку, которая позволяет просматривать несколько документов Word в одном окне Word и легко переключаться между ними, щелкая их вкладки. Нажмите, чтобы получить полную бесплатную пробную версию!
Просматривайте несколько документов Word в одном окне как Firefox


Относительные статьи:


Рекомендуемые инструменты для повышения производительности Word

выстрел kutools word kutools tab 1180x121

выстрел kutools word kutools plus tab 1180x120

Kutools For Word — Более 100 расширенных функций для Word, сэкономьте 50% времени

  • Сложные и повторяющиеся операции можно производить разово за секунды.
  • Вставляйте сразу несколько изображений из папок в документ Word.
  • Объединяйте и объединяйте несколько файлов Word из папок в одну в желаемом порядке.
  • Разделите текущий документ на отдельные документы в соответствии с заголовком, разрывом раздела или другими критериями.
  • Преобразование файлов между Doc и Docx, Docx и PDF, набор инструментов для общих преобразований и выбора и т. Д.

Как объединить несколько файлов Ворд в один

На чтение 4 мин Просмотров 264

Иногда у нас возникает необходимость объединить несколько файлов Ворд в один. На той странице мы рассмотрим два способа, как это можно сделать. Но прежде, чем приступить к объединению нескольких документов в один, убедитесь, что все документы лежат у вас в одной папке. Сделали? Тогда приступим.

Объединяем документы с помощью «Текст из файла»

Этот способ поможет вам соединить несколько файлов в один, но знайте, что при этом будет потеряно форматирование в готовом документе.

Шаг 1.

Создайте новый пустой документ: иконка «Офиса», затем «Создать».как объединить несколько документов word в один

Шаг 2.

Перейдите на вкладку «Вставка», найдите в разделе «Текст» кнопку «Объект» и нажмите на стрелочку вниз.
Шаг 3.

В диалоговом окне выберите «Текст из файла».как объединить несколько файлов ворд в один

Шаг 4.

Выберите все файлы, которые вы желаете объединить в один.

Чтобы выбрать все сразу файлы нажмите CTRL + A. Если вы желаете выбрать несколько файлов подряд, то выделите первый из них, затем зажмите клавишу SHIFT и выберите последний — промежуточные выделяться автоматически. Если вам нужно выбрать, к примеру, все нечетные файлы, то выделяйте их левой кнопкой мыши, держа клавишу CTRL.

Шаг 5.

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

Объединяем документы с помощью скрипта VBA

Прежде чем приступить к запуску следующего скрипта, прошу вас, проделайте эти инструкции:

  1. Соберите все документы, которые вы будете объединять в одну папку и пронумеруйте их в том порядке, в котором они должны быть. Например так: часть 1, часть 2 и т.д. Необходимо это сделать для того, чтобы в процессе объединения документов не был перепутан материал.
  2. Откройте документ с тем материалом, который будет размещен самый первым, и только после этого приступайте к запуску скрипта.

Шаг 1. 

В окне Ворда нажмите на сочетание клавиш ALT + F11 для запуска Visual Basic Application.

Шаг 2.

В меню «Insert» — «Module». Теперь скопируйте код скрипта и вставьте его в окне VBA.ворд в один файл

Шаг 3.

Запустите выполнение кода, нажав F5 на клавиатуре, либо на панели на зеленый треугольник.
ворд в один документ

VBA скрипт, чтобы объединить несколько файлов Word в один.

Sub MergeDocuments()
  Application.ScreenUpdating = False
  MyPath = ActiveDocument.Path
  MyName = Dir(MyPath & "" & "*.doc")
  i = 0 
  Do While MyName <> ""
  If MyName <> ActiveDocument.Name Then
  Set wb = Documents.Open(MyPath & "" & MyName)
  Selection.WholeStory
  Selection.Copy
  Windows(1).Activate
  Selection.EndKey Unit:=wdLine
  Selection.TypeParagraph
  Selection.Paste
  i = i + 1
  wb.Close False
  End If
  MyName = Dir
  Loop
  Application.ScreenUpdating = True
  End Sub

Эти способы справедливы для разных версий Microsoft Word 2007, 2010, 2013, 2016, 2019.

Удачи в изучении. Переходите к другим урокам.

Немного юмора:

– Почему ваш антивирус так долго фильм проверяет?
– Он его смотрит.

0 / 0 / 0

Регистрация: 19.09.2014

Сообщений: 6

1

03.10.2014, 14:03. Показов 4674. Ответов 7


Студворк — интернет-сервис помощи студентам

Доброго времени суток форумчане! Нашел на форуме тему » Объединить заданные пользователем открытые файлы word в один файл». «Апострофф» предложил отличный код, который сводит в один word-кий файл все закрытые файлы одного каталога. Код работает. Как доработать код, что бы после объединения, удалялись все таблицы с объединенного файла. Заранее всем спасибо.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

03.10.2014, 14:03

7

0 / 0 / 0

Регистрация: 19.09.2014

Сообщений: 6

03.10.2014, 16:29

 [ТС]

3

«Апострофф» доброго времени суток! Спасибо за подсказки. «Объединить закрытые файлы word одного каталога в один файл» работает, но таблицы в колонтитулах не убирает. Как удалить и колонтитулы? Спасибо.



0



0 / 0 / 0

Регистрация: 19.09.2014

Сообщений: 6

06.10.2014, 07:51

 [ТС]

4

Доброго времени суток! Задаю папку и пытаюсь открыть файлы, но что то не так. Как подправить код, что бы выбирал папку вне зависимости, где находится файл объединения. Спасибо

Вложения

Тип файла: rar 1.rar (21.3 Кб, 32 просмотров)



0



shanemac51

Модератор

Эксперт MS Access

11341 / 4660 / 748

Регистрация: 07.08.2010

Сообщений: 13,497

Записей в блоге: 4

06.10.2014, 08:20

5

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Sub mmCommandButton1_Click()
'' немного отладки ввела, у вас не улалялась кнопка, с которой вызывался макрос
''------------------------------
''ctrl+f8+выполнить
 
Dim strFile As String
With Application.FileDialog(msoFileDialogFolderPicker)
    If Len(sPath) > 0 Then
      .InitialFileName = sPath
    End If
    .ButtonName = "Выбрать"
    .Title = "Выберите исходную папку"
    If .Show Then
    ''ThisDocument.Tables(1).Cell(1, 1).Range.Text = .SelectedItems(1)
    Else '"" & sMask
    End If
End With
  
strFile = Dir(strFolder & "*.doc")
Do While strFile <> ""
Debug.Print strFile
Selection.InsertFile strFolder & strFile
strFile = Dir
Loop
 
    Dim tbl As Table, j1
    Debug.Print
    j1 = Word.ActiveDocument.Tables.Count
    For Each tbl In ActiveDocument.Tables
    j1 = j1 - 1
    Debug.Print "*"; j1;
        tbl.Delete
    Next
 
    Dim Sha As ShapeRange
    ActiveDocument.Select
    For Each Sha In Selection.ShapeRange
        Sha.Delete
    Next
 
End Sub



0



0 / 0 / 0

Регистрация: 19.09.2014

Сообщений: 6

06.10.2014, 09:20

 [ТС]

6

Доброе утро shanemac51! Спасибо за отзывчивость. При выполнении макроса, я выбираю папку и файлы объединяются. Когда я выбираю другую папку то файлы не объединяются а загружаются предыдущие.



0



Апострофф

Заблокирован

06.10.2014, 10:13

7

Лучший ответ Сообщение было отмечено nwcop как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
OPTION EXPLICIT'!!!!!!!!!!!!!!!
'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
Private Sub CommandButton1_Click()
Dim strFile As String, strFolder As String
With Application.FileDialog(msoFileDialogFolderPicker)
'    If Len(sPath) > 0 Then
'      .InitialFileName = sPath
'    End If
    .ButtonName = "Выбрать"
    .Title = "Выберите исходную папку"
    If .Show Then 
      strFolder = .SelectedItems(1) 'ThisDocument.Tables(1).Cell(1, 1).Range.Text = .SelectedItems(1) Else '"" & sMask
    ELSE
      EXIT SUB
    ENDIF
End With
  
strFile = Dir(strFolder & "*.doc")
Do While strFile <> ""
Selection.InsertFile strFolder & "" & strFile
strFile = Dir
Loop
 
    Dim tbl As Table
    For Each tbl In ActiveDocument.Tables
        tbl.Delete
    Next
 
    Dim Sha As ShapeRange
    For Each Sha In ActiveDocument.Shapes
        Sha.Delete
    Next
 
End Sub



1



0 / 0 / 0

Регистрация: 19.09.2014

Сообщений: 6

06.10.2014, 13:12

 [ТС]

8

Добрый день Апострофф! Спасибо огромное. Протестировали все работает.



0



 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

Здравствуйте. Помогите решить вопрос.
На листе эксель — в столбце располагаются три адреса файлов doc (три файла 111.doc, 222.doc, 333.doc).

Как макросом провести объединение doc файлов из столбца в определенном порядке ?
(общий файл «Общий.doc», должен сохраниться в ту же папку что и файл с макросом. )  

Прикрепленные файлы

  • 213123.rar (38.07 КБ)

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

Как раз пример кода работы с Word-документами из Excel. Запишите макрорекордером (в Word!) нужные действия с документами и объедините/переработайте с примером по ссылке

КАК ИЗ EXCEL ОБРАТИТЬСЯ К ДРУГОМУ ПРИЛОЖЕНИЮ

Согласие есть продукт при полном непротивлении сторон.

 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

Sanja, в статье приводится как я понял — вставка из экселя в ворд или из ворда в эксель.
Я же имел ввиду — создание документа doc, копирование в него файлов doc в нужном порядке, закрытие документа doc.

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#4

11.08.2017 10:41:05

Цитата
Dim Ozerov написал: Я же имел ввиду…

Я же Вам написал

Цитата
Sanja написал: Запишите макрорекордером (в Word!) нужные действия … и объедините/переработайте с примером по ссылке

Согласие есть продукт при полном непротивлении сторон.

 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

#5

11.08.2017 11:02:01

Sanja, в ворде макрорекордер как-то по-другому работает.
Записал макрос в ворде, но он ничего не копирует.

Код
 
Sub Объединение()

    Documents.Add DocumentType:=wdNewBlankDocument
    ActiveDocument.SaveAs FileName:="Общий.doc", FileFormat:=wdFormatDocument, _
         LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _
        :="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
        SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
        False
     RecentFiles(4).Open
    Selection.WholeStory
    Selection.Copy
    Windows("Общий.doc").Activate
    Windows("222.doc").Activate
    ActiveDocument.Close
    RecentFiles(4).Open
    Selection.WholeStory
    Selection.Copy
    Windows("Общий.doc").Activate
    Windows("111.doc").Activate
    ActiveDocument.Close
    RecentFiles(4).Open
    Selection.WholeStory
    Selection.Copy
    Windows("Общий.doc").Activate
    Windows("333.doc").Activate
    ActiveDocument.Close
    ActiveDocument.Save
    ActiveDocument.Close
End Sub

Видимо потому что  Selection.Copy — надо как-то задавать — выделение по странице или весь документ.
Макрорекодер воспринимает  Selection.Copy — как самостоятельное выделение мышью.

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

Так у Вас вопрос больше по VBA Word’а чем по Excel. Ищите тематические форумы

Согласие есть продукт при полном непротивлении сторон.

 

Бахтиёр

Пользователь

Сообщений: 1930
Регистрация: 15.01.2016

Excel 365

#7

11.08.2017 11:09:57

От Дмитрия (The_Prist)

Код
Sub MergeFiles()
    Dim avFiles, lr As Long
    Dim docAct As Document, docNow As Document

    With Application.FileDialog(msoFileDialogFilePicker)
        .InitialFileName = "*.doc*"
        .AllowMultiSelect = True
        If .Show = False Then Exit Sub
        Set docAct = ActiveDocument
        For lr = 1 To .SelectedItems.Count
            Set docNow = Documents.Open(.SelectedItems(lr))
            docNow.Range.Copy
            docAct.Range(docAct.Range.End - 1).Paste
            docAct.Range(docAct.Range.End - 1).InsertBreak Type:=0
            docNow.Close 0
        Next lr
    End With
End Sub

А тему наверно в курилку

 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

Изменено: Dim Ozerov11.08.2017 11:38:50

 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

Бахтиёр, а не подскажете — как работает этот скрипт.
Он вызывает окошко, где предлагает выбрать word-документ.
Если выбрать какой-либо файл — то макрос открывает этот файл и выдает ошибку (Run-time error `-2147417848 (80010108)` Automation error Вызванный объект был отключен от клиентов)

Подключена библиотека Microsoft Word 15.0 Object Library
В чем может быть ошибка?

 

Юрий М

Модератор

Сообщений: 60575
Регистрация: 14.09.2012

Контакты см. в профиле

#10

11.08.2017 13:05:14

Цитата
Dim Ozerov написал:
Записал макрос в ворде

Dim Ozerov, Вам нужен макрос в Word?

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

#11

11.08.2017 14:19:14

Код
Sub мяу()
    Dim wa As Object, wd As Object, wdt As Object
    Dim cel As Range
    Set wa = CreateObject("Word.Application")
    wa.Visible = True
    Set wd = wa.documents.Add
    For Each cel In ThisWorkbook.Sheets(3).Range("D4:D6")
        Set wdt = wa.documents.Open(cel.Value)
        wdt.Range.Copy
        wdt.Close False
        wa.Selection.Paste
        wa.Selection.TypeParagraph

    Next
    wd.SaveAs2 ThisWorkbook.Path & "Мяу.doc", 0
    wd.Close False
    wa.Quit False
    Set wa = Nothing: Set wd = Nothing
End Sub
 

Megamen2

Пользователь

Сообщений: 101
Регистрация: 21.07.2017

RAN, макрос в целом работает, то есть группирует все вордовские файлы в один документ — под названием «Документ1».
Но вот сохранить его как «Мяу.doc» — не может.

Выдает в этом месте ошибку : » Run-time error `438` Object doesn`t support this property or method «
И подсвечивает строчку кода     wd.SaveAs2 ThisWorkbook.Path & «Мяу.doc», 0  

Изменено: Megamen211.08.2017 15:31:08

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

Вариантов, собственно, два.
1. Установить Word, где есть метод SaveAs2.
2. Использовать метод SaveAs.

 

Megamen2

Пользователь

Сообщений: 101
Регистрация: 21.07.2017

#14

11.08.2017 16:36:29

Цитата
RAN написал:
2. Использовать метод SaveAs.

Метод SaveAs — работает

Изменено: Megamen211.08.2017 16:38:16

 

Dim Ozerov

Пользователь

Сообщений: 99
Регистрация: 21.07.2017

#15

11.08.2017 16:43:59

RAN, все заработало.
Спасибо за ответ.

Понравилась статья? Поделить с друзьями:
  • Vba обращение к файлу excel
  • Vba обработка файлов excel
  • Vba обработка строки excel
  • Vba обновление полей word
  • Vba нумерованный список в word