Перейти к основному содержанию

Как экспортировать все макросы из одной книги в другую?

Если вам нужно экспортировать несколько макросов VBA-кодов из одной книги в другую, вы можете скопировать их один за другим обычным образом. Но это займет много времени, в этой статье я расскажу о том, как быстро экспортировать все макросы из одной книги в другую, а также сохранить файлы макросов в определенной папке.

Экспорт всех макросов из одной книги в другую с кодом VBA


Экспорт всех макросов из одной книги в другую с кодом VBA

Чтобы экспортировать все коды макросов vba из одного файла Excel в другой, выполните следующие действия:

1. Во-первых, вы должны открыть две книги одновременно, одна содержит макросы, а другая - та, в которую вы хотите экспортировать макросы, см. Снимок экрана:

макросы экспорта документов 1

Вкладка Office: открытие, чтение, редактирование и управление несколькими документами Office в одном окне с вкладками.

Вкладка Office позволяет просматривать, редактировать и управлять приложениями 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
Внимание: В приведенном выше коде "старая книга»- это имя книги, из которой вы хотите экспортировать макросы, и«новая рабочая тетрадь»- это книга, в которую вы хотите импортировать макросы. Вы должны изменить имена на свои собственные. Обе книги должны быть XLSM формат файла.

макросы экспорта документов 2

4. После вставки вышеуказанного кода нажмите F5 ключ для запуска этого кода и ЛИСТАТЬ СПИСКИ отображается окно, выберите папку для хранения экспортированных файлов макросов, см. снимок экрана:

макросы экспорта документов 3

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

макросы экспорта документов 4

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

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I agree with Rediflow. Please provide a clue to where the code can be found to export all macros from the personal.xlsb file to a text file.
This comment was minimized by the moderator on the site
can this be altered to just export all Moduls from the personal.XLSB? Just for regular "Backup of my Macros" - Reasons
This comment was minimized by the moderator on the site
Hello, This did not work for me:( All my macros have names, is that the problem?Thanks for any help
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations