Excel VBA FileCopy İşlevi
Dosya Kopyalama, dosyayı bir konumdan belirtilen başka bir konuma kopyalamak için kullanılan dahili bir vba işlevidir. Bu işlevi kullanmak için, mevcut dosya yolunu ve hedef dosya yolunu belirtmemiz gerekir.
Tamam, FileCopy işlevinin sözdizimine bakalım.

- Kaynak: Bu, dosyayı kopyalamamız gereken yerden başka bir şey değil. Tam nitelikli klasör yolundan bahsetmemiz gerekiyor.
- Hedef: Bu, kopyalanan dosyayı yapıştırmamız gereken hedef klasördür.
Örnekler
Aşağıda, VBA Kodu kullanılarak dosyaların nasıl kopyalanacağına dair örnekler verilmiştir.
Örnek 1
Basit bir örnekle başlayalım. Klasörde "Nisan 2019 Satışları" adlı bir dosyam var. Aşağıda aynı resmin görüntüsü, yani " Kaynak" var.

Yukarıdaki konumdan bu dosyayı kopyalayıp farklı bir klasöre yapıştırmak istiyorum. Aşağıda aynı resmin görüntüsü, yani " Hedef Kaynak" bulunmaktadır.

Tamam, onun kodunu yazalım.
Alt yordam içinde FileCopy işlevini açın .
Kod:
Sub FileCopy_Example1 ()
FileCopy
Sub

Şimdi ilk argüman için, para birimimizin bulunduğu dosya yolundan bahsetmemiz gerekiyor.
Kod:
Sub FileCopy_Example1 ()
FileCopy “D: Dosyalarım VBA Nisan Dosyaları
Sub

Klasör yolundan bahsettikten sonra, dosya uzantılı dosyadan da bahsetmemiz gerekiyor. Bu nedenle, bir ters eğik çizgi () koyarak dosya adını belirtin.
Kod:
Sub FileCopy_Example1 () FileCopy "D: My Files VBA April Files Sales April 2019.xlsx", End Sub

Şimdi ikinci argümanda, kopyalanan dosyayı nereye yapıştırmamız gerektiğini belirtin.
Kod:
Sub FileCopy_Example1 () FileCopy "D: My Files VBA April Files Sales April 2019.xlsx", "D: My Files VBA Destination Folder Sales April 2019.xlsx" End Sub

Bundan sonra klasör yolundan bahsederek yapmamız gereken bir şey, dosya adını hedef argümanında da belirtmemiz gerekir.
Şimdi kodu F5 tuşunu kullanarak veya manuel olarak çalıştırın. Ardından, dosyayı aşağıdaki konumdan bir hedef konuma kopyalayacaktır.
"D: Dosyalarım VBA Nisan Dosyaları Satışlar Nisan 2019.xlsx"
"D: Dosyalarım VBA Hedef Klasör Satışlar Nisan 2019.xlsx"

Örnek 2 - Kaynak Yolu ve Hedef Yolu Saklamak için Değişkenleri Kullanın.
Önceki örnekte, kaynak yolu ve hedef yolu doğrudan formüle sağladık. Ancak bu devam etmek için en iyi uygulama değildir, bu yüzden onları değişkenler halinde saklayalım.
Örneğin, aşağıdaki koda bakın.
Kod:
Sub FileCopy_Example2 () Dim SourcePath As String Dim DestinationPath As String SourcePath = "D: Dosyalarım VBA Nisan Dosyaları Satışlar Nisan 2019.xlsx" DestinationPath = "D: Dosyalarım VBA Hedef Klasör Satışlar Nisan 2019. xlsx "FileCopy SourcePath, DestinationPath End Sub

Kodu sizin için ayrıntılı olarak açıklamama izin verin.
İlk olarak iki değişken tanımladım.
Dim SourcePath As String Dim DestinationPath As String
Daha sonra, ilk değişken için, dosyayı kopyalaması gereken klasör yolunu ve dosya uzantısıyla birlikte dosya adını atadım.
SourcePath = "D: Dosyalarım VBA Nisan Dosyaları Satışlar Nisan 2019.xlsx"
İkinci değişken için, benzer şekilde, hedef klasör yolunu dosya adı ve excel uzantısı ile atadım.
DestinationPath = "D: Dosyalarım VBA Hedef Klasör Satışlar Nisan 2019.xlsx"
Daha sonra FileCopy formülü için, uzun klasör yolu dizeleri yerine bu değişkenleri sağladım.
FileCopy SourcePath, DestinationPath
Bunun gibi, yolları depolamak ve onları verimli bir şekilde kullanmak için değişkenleri kullanabiliriz.
Örnek 3 - Dosya Kopyalama İşlevinde Hata
Bazen Dosya Kopyalama işlevi "İzin Verilmedi" hatasıyla karşılaşır.

Bu hatayı almamızın nedeni, kopyalama dosyası açıldığında ve kopyalamaya çalıştığınızda yukarıdaki hata gelir, bu nedenle her zaman dosyayı kapatın ve kodu çalıştırın.