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 за изтегляне. Можете да разгледате и другите ни предложени статии -
- Работа с VBA Active Cell
- Изтриване на ред в VBA
- Как да използвате Excel VBA Transpose?
- Как да поправите грешка 1004 при използване на VBA