Як скопіювати папку у vba (з прикладом)
Ви можете використовувати метод CopyFolder у VBA, щоб скопіювати папку з одного місця в інше.
Ось поширений спосіб використання цього методу на практиці:
Sub CopyMyFolder()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"
'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder
End Sub
Цей конкретний макрос копіює папку під назвою current_data з папки Documents на робочий стіл .
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: як скопіювати папки за допомогою VBA
Скажімо, у нас є папка під назвою current_data , розташована в папці під назвою Documents :
Тепер припустімо, що ми хочемо використати VBA, щоб скопіювати всю цю папку на робочий стіл , який наразі містить дві папки:
Перш ніж використовувати VBA для копіювання цього файлу, ми повинні спочатку ввімкнути Microsoft Scripting Runtime у редакторі VB.
Для цього відкрийте редактор VB, клацніть Інструменти , потім клацніть Посилання :
У новому вікні, що з’явиться, прокрутіть вниз, доки не побачите Microsoft Scripting Runtime , і поставте прапорець біля нього. Потім натисніть OK .
Тоді ми можемо створити такий макрос для копіювання папки:
Sub CopyMyFolder()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"
'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder
End Sub
Після виконання цього макросу папку з назвою current_data буде скопійовано з папки Documents на робочий стіл :
Оригінальна папка current_data також залишиться в папці Documents .
Примітка . Повну документацію щодо методу CopyFolder можна знайти тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
Як створити папки за допомогою VBA
Як видалити папки за допомогою VBA
Як створити список файлів у папці за допомогою VBA