Vba: як скопіювати файл з одного місця в інше


Ви можете використовувати метод CopyFile у VBA, щоб скопіювати файл з однієї папки в іншу.

Ось поширений спосіб використання цього методу на практиці:

 SubCopyMyFile ()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

Цей конкретний макрос копіює файл під назвою soccer_data.txt з папки під назвою Some_Data_1 до папки під назвою Some_Data_2 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як скопіювати файли за допомогою VBA

Припустімо, у нас є текстовий файл під назвою soccer_data.txt , розташований у папці під назвою Some_Data_1 на нашому робочому столі:

Тепер припустімо, що ми хочемо використовувати VBA, щоб скопіювати цей текстовий файл в іншу папку під назвою Some_Data_2 на нашому робочому столі, яка наразі містить два текстові файли:

Перш ніж використовувати VBA для копіювання цього файлу, ми повинні спочатку ввімкнути Microsoft Scripting Runtime у редакторі VB.

Для цього відкрийте редактор VB, клацніть «Інструменти» , потім клацніть «Посилання» :

У новому вікні, що з’явиться, прокрутіть униз, доки не побачите Microsoft Scripting Runtime , і поставте прапорець біля нього. Потім натисніть OK .

Тоді ми можемо створити такий макрос для копіювання файлу:

 SubCopyMyFile ()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

Після виконання цього макросу файл із назвою soccer_data.txt буде скопійовано з папки Some_Data_1 до папки Some_Data_2 :

Оригінальний файл soccer_data.txt також залишиться в папці Some_Data_1 :

Примітка . Ви можете знайти повну документацію для методу CopyFile тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

Як створити папки за допомогою VBA
Як видалити папки за допомогою VBA
Як видалити файли за допомогою VBA

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *