Як експортувати всі макроси з однієї книги в іншу книгу?
Якщо вам потрібно експортувати декілька макрокоманд vba з однієї книги в іншу, ви можете нормально копіювати їх по одному. Але це забирає багато часу, у цій статті я розповім про те, як швидко експортувати всі макроси з однієї книги в іншу та зберегти файли макросів також у певній папці.
Експортуйте всі макроси з однієї книги в іншу за допомогою коду VBA
Експортуйте всі макроси з однієї книги в іншу за допомогою коду VBA
Щоб експортувати всі макрокоманди vba з одного файлу Excel в інший, виконайте такі дії:
1. По-перше, вам слід відкрити дві книги одночасно, одна містить макроси, інша - ту, до якої ви хочете експортувати макроси, див. Знімок екрана:
Вкладка Office – відкривайте, читайте, редагуйте та керуйте кількома документами Office в одному вікні з вкладками
Вкладка Office дозволяє переглядати, редагувати та керувати програмами Microsoft Office із вкладками. Ви можете відкривати кілька документів/файлів в одному вікні з вкладками, наприклад, за допомогою браузера IE 8/9/10, Firefox і Google Chrome. Клацніть, щоб завантажити та безкоштовну пробну версію зараз! |
2. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Microsoft Visual Basic для додатків вікна.
3. Клацання Insert > Модуль і вставте наступний макрос у Модулі Вікно
Код 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 формат файлу
4. Після вставки вищевказаного коду натисніть F5 ключ для запуску цього коду, і a перегорнути відобразиться вікно, будь ласка, виберіть папку для розміщення експортованих файлів макросів, див. знімок екрана:
5. Потім натисніть OK , і всі макроси були експортовані із зазначеної книги в інший файл Excel, а файли макросів також збережені у певній папці. Дивіться знімок екрана:
примітки: Цей код може експортувати макроси лише із звичайного модуля.
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!