Excel VBA FileCopy

Има много начини за копиране или преместване на файл от една папка в друга. Можем да го направим ръчно от Копиране и изрязване на иконата на файла и поставяне в папката на местоназначение. Но когато става въпрос за автоматизиране на този процес на копиране на файла, можем да го направим и във VBA. За да копираме файла, имаме функция, налична в VBA, наречена като „File Copy“.

Синтаксис на FileCopy в Excel VBA

Много лесно е да приложите File Copy във VBA. Синтаксисът на File Copy е както е показано по-долу.

File Copy има само два компонента за захранване. Които са:

  • Източник - Тук ще поставим местоположението на източника, откъдето трябва да копираме файла.
  • Дестинация - И това ще бъде папката на местоназначението, в която ще поставим копирания файл.

Пълният синтаксис ще бъде в String тип данни. Защото ще използваме пътя на файла, който ще бъде като текст.

Как да копирате файл в Excel VBA?

Сега нека опитаме с някои примери за VBA File Copy в Excel.

Можете да изтеглите този VBA Копиране на шаблон на файл Excel тук - VBA Копиране на шаблон на файл Excel

Пример №1 - FileCopy във VBA

В първия пример ще видим как да копираме файл от местоположението на източник и да го поставим на място по местоназначение по много прост начин.

За целта ни е необходим файл от всякакъв вид или разширение. Тук обмисляме Excel файл с разширение xlsx . Както виждаме, поставихме този excel файл на място, което е лесно достъпно, наречено Test .

Сега ще копираме този файл с помощта на FileCopy в папката по-долу назначение.

Стъпка 1: За това отидете на VBA и отворете модул от менюто Вмъкване на падащото меню, както е показано по-долу.

Стъпка 2: Сега в отворения модул напишете подкатегорията на VBA FileCopy или в друго име според вашия избор.

Код:

 Sub VBA_Copy1 () Край Sub 

Стъпка 3: Сега директно отворете функцията FileCopy, както е показано по-долу.

Код:

 Sub VBA_Copy1 () FileCopy (Край Sub 

Стъпка 4: Сега в кавички напишете адреса на местоположението на източника, последвано от името на файла и разширението, както е показано по-долу.

Код:

 Sub VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", End Sub 

Стъпка 5: За местоназначението отново поставете пътя в обърнати запетаи, последвани от файл и разширение.

Код:

 Под VBA_Copy1 () FileCopy "D: \ Test1 \ Hello.xlsx", "D: \ VPB файл \ април файлове \ Hello.xlsx" Край на Sub 

Стъпка 6: Сега компилирайте кода и го стартирайте, като кликнете върху бутона Възпроизвеждане, който се намира под лентата на менюто. Ще видим, че файлът на excel с име Тест вече се копира от местоположението на източника до местоназначението, както е показано по-долу. Тъй като нямаше нищо във файла, така и размерът на файла идва като 0 KB .

Пример №2 - FileCopy във VBA

В друг пример ще видим как да копираме файла от местоположението на Source в Destination, като дефинираме променливата. Този процес е малко продължителен, но по-надежден, тъй като ще фиксираме параметрите и променливата.

Стъпка 1: Сега първо отворете нов модул и напишете подкатегорията на VBA File Copy, както е показано по-долу.

Код:

 Sub VBA_Copy2 () End Sub 

Стъпка 2: Първо, дефинирайте променлива, където ще поставим местоположението на източника на файла същия файл excel, който сме използвали в пример-1 като String.

Код:

 Sub VBA_Copy2 () Dim FirstLocation като String End Sub 

Стъпка 3: По подобен начин ще се нуждаем от друга променлива за местоназначението.

Код:

 Sub VBA_Copy2 () Dim FirstLocation като String Dim SecondLocation като String End Sub 

Стъпка 4: Сега поставете местоположението в първата дефинирана променлива, която е „ FirstLocation “, заедно с името на файла и неговото разширение.

Код:

 Sub VBA_Copy2 () Dim FirstLocation като String Dim SecondLocation като String FirstLocation = "D: \ Test1 \ Hello.xlsx" Край Sub 

Стъпка 5: По подобен начин направете същото за местоназначението, използвайки променлива „ SecondLocation“, която сме дефинирали по-горе.

Код:

 Под VBA_Copy2 () Dim FirstLocation като стринг Dim SecondLocation като String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB файл \ април файлове \ Hello.xlsx" край Sub 

Стъпка 6: Сега е време да използвате функцията FileCopy .

Код:

 Под VBA_Copy2 () Dim FirstLocation като стринг Dim SecondLocation като String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB файл \ април файлове \ Hello.xlsx" FileCopy End Sub 

Според синтаксиса на FileCopy първо трябва да поставим местоположението на източника, където сме запазили файла. Но както вече дефинирахме папките за източник и местоназначение по-горе за двете променливи.

Стъпка 7: Така че тук можем директно да подберем тези променливи. Първо изберете променлива местоположение на източника, която е FirstLocation .

Код:

 Под VBA_Copy2 () Dim FirstLocation като стринг Dim SecondLocation като String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB файл \ април файлове \ Hello.xlsx" FileCopy FirstLocation End Sub 

Стъпка 8: Отново по подобен начин изберете променливата за местоназначение, която е SecondLocation, както е показано по-долу.

Код:

 Под VBA_Copy2 () Dim FirstLocation като стринг Dim SecondLocation като String FirstLocation = "D: \ Test1 \ Hello.xlsx" SecondLocation = "D: \ VPB файл \ април файлове \ Hello.xlsx" FileCopy FirstLocation, SecondLocation End Sub 

Стъпка 9: След като приключим, ще компилираме кода, като натискаме функционален клавиш F8. И ако няма намерена грешка, тогава стартирайте кода. Ще видим, че файлът от местоположението на източника се копира и поставя в папката на местоназначението, както е показано по-долу.

Можем да опитаме и различен път към местоположението. За тест нека помислим за друго източно местоположение, където ще имаме файл с думи.

Както виждаме, файлът няма данни, така че размерът отново се показва като 0 KB.

А папката за местоназначение ще бъде папка „Изходно местоположение“, която е под папката „Местоположение на входа“. Ако видим вътре във файла, няма налични данни.

Сега ще заменим източника и местоназначението в променливи FirstLocation и Second Location, съответно последвани от името на файла и неговото разширение.

Код:

 Под VBA_Copy2 () Dim FirstLocation като String Dim SecondLocation като String FirstLocation = "D: Файл VPB \ Априлски файлове \ New Excel \ Test Case.docx" SecondLocation = "D: \ VPB файл \ Априлски файлове \ Крайно местоположение \ Тест. docx "FileCopy FirstLocation, SecondLocation End Sub 

Сега стартирайте кода.

Ще видим, че файлът с тестови думи вече се копира от папката входно местоположение в папката за местоположение на изхода със същия размер, който е 0 KB.

Плюсове на FileCopy във VBA

  • Може да се използва за копиране на повече от 1 файл в един кадър.
  • Това отнема толкова време за 10 файла, колкото е необходимо за копирането на един файл.
  • Можем да използваме всеки тип файл с разширение, който искаме да копираме.

Неща, които трябва да запомните

  • Винаги поставяйте името на файла и неговото разширение в края на името на местоположението.
  • Цитирайте връзките за местоназначение и източник в обърнати запетаи.
  • След като сте готови, запишете кода в Макрос, позволяйте на excel да използва и запазва кода за бъдещи цели.
  • Винаги давайте разрешение за кодиране, така че да може да копира файла от местоположението на източника и да го поставите в местоназначение.

Препоръчителни статии

Това е ръководство за FileCopy във VBA. Тук обсъждаме как да копирате файл в Excel, използвайки VBA код, заедно с практически примери и шаблон за Excel за изтегляне. Можете да разгледате и другите ни предложени статии -

  1. Работа с VBA Active Cell
  2. Изтриване на ред в VBA
  3. Как да използвате Excel VBA Transpose?
  4. Как да поправите грешка 1004 при използване на VBA

Категория: