Как экспортировать все макросы из одной книги в другую?
Если вам нужно перенести несколько макросов VBA из одной книги в другую, можно копировать их по одному вручную — но это займёт уйму времени. В этой статье я покажу, как быстро экспортировать все макросы из одной книги в другую и сохранить файлы макросов в нужную папку.
Экспорт всех макросов из одной книги в другую с помощью кода VBA
Экспорт всех макросов из одной книги в другую с помощью кода VBA
Чтобы экспортировать все макросы VBA из одного файла Excel в другой, выполните следующие действия:
1. Сначала откройте обе книги одновременно: одна содержит макросы, а в другую вы хотите их экспортировать (см. скриншот):

Office Tab — открывайте, читайте, редактируйте и управляйте несколькими документами Office в одном окне с вкладками Office Tab добавляет вкладки в приложения Microsoft Office для удобного просмотра, редактирования и управления документами. Открывайте сразу несколько файлов в одном окне — точно так же, как это делают браузеры IE 8/9/10, Firefox и Google Chrome.Нажмите, чтобы скачать и начать бесплатную пробную версию прямо сейчас! |
2. Удерживая клавиши ALT + F11, откройте окно Microsoft Visual Basic для приложений.
3. Нажмите Вставить > Модуль и вставьте следующий макрос в окно Модуль.
Код VBA: экспорт всех макросов из одной книги в другую:
Sub ExportAndImportModule()
Dim xStrSWSName, xSreDWSName As String
Dim xSWS, xDWS As Workbook
xStrSWSName = "old-workbook"
xSreDWSName = "new-workbook"
Dim xFilePath As String
Dim xObjFD As FileDialog
Set xObjFD = Application.FileDialog(msoFileDialogFolderPicker)
With xObjFD
.AllowMultiSelect = False
.Show
If .SelectedItems.Count > 0 Then
xFilePath = .SelectedItems.Item(1)
Else
Exit Sub
End If
End With
On Error GoTo Err1
Set xSWS = Workbooks(xStrSWSName & ".xlsm")
Set xDWS = Workbooks(xSreDWSName & ".xlsm")
Set xvbap = xSWS.VBProject
Set xVBC = xvbap.VBComponents
For Each Module In xSWS.VBProject.VBComponents
If Module.Type = vbext_ct_StdModule Then
Module.Export (xFilePath & "\" & Module.Name & ".bas")
xDWS.VBProject.VBComponents.Import (xFilePath & "\" & Module.Name & ".bas")
End If
Next Module
Exit Sub
Err1:
MsgBox "come to nothing!"
End Sub
Примечание: в приведённом выше коде «old-workbook» — это имя книги, из которой вы хотите экспортировать макросы, а «new-workbook» — это книга, в которую вы хотите импортировать макросы. Замените эти имена на свои собственные. Обе книги должны быть в одном формате.xlsmТип файла.
4. После вставки приведённого выше кода нажмите клавишу F5, чтобы запустить его. Откроется окно Обзор, в котором выберите папку для сохранения экспортированных файлов макросов (см. скриншот):

5. Затем нажмите кнопку ОК, и все макросы будут экспортированы из указанной вами книги в другой файл Excel, а файлы макросов также сохранятся в выбранную папку (см. скриншот):

Примечание: этот код экспортирует макросы только из обычных модулей.

Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек