Как скопировать папку в 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 из папки «Документы» на рабочий стол .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: Как скопировать папки с помощью VBA
Допустим, у нас есть папка current_data , расположенная в папке Documents :
Теперь предположим, что мы хотим использовать VBA для копирования всей этой папки на рабочий стол , который в настоящее время содержит две папки:
Прежде чем использовать VBA для копирования этого файла, мы должны сначала включить среду выполнения сценариев Microsoft в редакторе VB.
Для этого откройте редактор VB, затем нажмите «Инструменты» , затем нажмите «Ссылки» :
В появившемся новом окне прокрутите вниз, пока не увидите Microsoft Scripting Runtime , и установите флажок рядом с ним. Затем нажмите ОК .
Затем мы можем создать следующий макрос для копирования папки:
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 будет скопирована из папки «Документы» на рабочий стол :
Исходная папка current_data также останется в папке «Документы» .
Примечание . Полную документацию по методу CopyFolder можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
Как создавать папки с помощью VBA
Как удалить папки с помощью VBA
Как составить список файлов в папке с помощью VBA