Vba'da klasör nasıl kopyalanır (örnekle)
Bir klasörü bir konumdan diğerine kopyalamak için VBA’daki CopyFolder yöntemini kullanabilirsiniz.
Bu yöntemi pratikte kullanmanın yaygın bir yolu:
Sub CopyMyFolder()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"
'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder
End Sub
Bu özel makro, current_data adlı klasörü Belgeler klasöründen Masaüstüne kopyalar.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: VBA kullanarak klasörler nasıl kopyalanır
Diyelim ki Documents adında bir klasörde current_data adında bir klasörümüz var:

Şimdi bu klasörün tamamını şu anda iki klasör içeren Desktop’a kopyalamak için VBA’yı 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 klasörü kopyalamak için aşağıdaki makroyu oluşturabiliriz:
Sub CopyMyFolder()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"
'copy folder
FSO.CopyFolder Source:=SourceFolder, Destination:=DestFolder
End Sub
Bu makro çalıştırıldığında, current_data adlı klasör Belgeler klasöründen masaüstüne kopyalanacaktır:

Orijinal current_data klasörü de Belgeler klasöründe kalacaktır.
Not : CopyFolder yöntemine ilişkin tüm belgeleri 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 bir klasördeki dosyalar nasıl listelenir