Vba: bir dosyayı bir konumdan diğerine nasıl kopyalarım?
Bir dosyayı bir klasörden diğerine kopyalamak için VBA’daki CopyFile yöntemini kullanabilirsiniz.
Bu yöntemi pratikte kullanmanın yaygın bir yolu:
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
Bu özel makro, futbol_data.txt adlı dosyayı Some_Data_1 adlı klasörden Some_Data_2 adlı klasöre kopyalar.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: VBA kullanarak dosyalar nasıl kopyalanır
Diyelim ki masaüstümüzdeki Some_Data_1 adlı bir klasörde futbol_data.txt adında bir metin dosyamız var:
Şimdi bu metin dosyasını masaüstümüzde şu anda iki metin dosyası içeren Some_Data_2 adlı başka bir klasöre kopyalamak için VBA kullanmak istediğimizi varsayalım:
Bu dosyayı kopyalamak için VBA’yı kullanmadan önce, ilk olarak VB düzenleyicisinde Microsoft Scripting Runtime’ı etkinleştirmeliyiz.
Bunu yapmak için VB düzenleyicisini açın, ardından Araçlar’a ve ardından Referanslar’a tıklayın:
Görüntülenen yeni pencerede Microsoft Scripting Runtime’ı görene kadar aşağı kaydırın ve yanındaki kutuyu işaretleyin. Daha sonra Tamam’ı tıklayın.
Daha sonra dosyayı kopyalamak için aşağıdaki makroyu oluşturabiliriz:
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
Bu makro çalıştırıldığında futbol_data.txt adlı dosya Some_Data_1 klasöründen Some_Data_2 klasörüne kopyalanacaktır:
Orijinal futbol_data.txt dosyası da Some_Data_1 klasöründe kalacaktır:
Not : CopyFile yönteminin tam belgelerini burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA Kullanarak Klasörler Nasıl Oluşturulur
VBA kullanarak klasörler nasıl silinir
VBA kullanarak dosyalar nasıl silinir