Dosyaları VBA FileSystemObject (MoveFile) ile Taşıma

Bu öğretici, FileSystemObject'in MoveFile yönteminin nasıl kullanılacağını gösterecektir.

Dosyaları VBA FileSystemObject ile Taşıyın

MoveFile yöntemi, bir veya daha fazla dosyayı bir konumdan diğerine taşır.

VBA Referansını Ayarla

İlk olarak, FileSystemObjects kullanırken, VB komut dosyası çalışma zamanı kitaplığına bir başvuru ayarlamanız gerekebilir: Visual Basic Düzenleyicisini (ALT+F11) açın, açılır menüden Araçlar > Başvurular'ı seçin ve onay kutusunu işaretleyin. 'Microsoft Komut Dosyası Çalışma Zamanı'.

DosyaSistemNesnesi

İkinci olarak, FileSystemObject'i oluşturmalısınız:

12 FSO'yu Yeni FileSystemObject Olarak DimFSO'yu ayarla = CreateObject("Scripting.FileSystemObject")

Artık MoveFile'a ve diğer FileSystemObject Yöntemlerine erişiminiz var.

VBA Programlama | Code Generator sizin için çalışıyor!

Bir Dosyayı Taşı

Tek bir dosyayı taşımak için FSO.MoveFile( kaynak, hedef ) basit sözdizimini kullanabilirsiniz.

1 FSO.MoveFile "C:\Src\TestFile.txt", "C:\Dst\ModTestFile.txt"

Yukarıda belirtildiği gibi, önce FileSystemObject'i oluşturmanız gerekir:

1234567 Alt FSOMoveFile()FSO'yu Yeni FileSystemObject Olarak DimFSO'yu ayarla = CreateObject("Scripting.FileSystemObject")FSO.MoveFile "C:\Src\TestFile.txt", "C:\Dst\ModTestFile.txt"Alt Bitiş

Birden Fazla Dosyayı Taşı

Aynı ad bölümlerine sahip birden çok dosyayı taşıyabilirsiniz:

1 FSO.MoveFile "C:\Src\TestFile*.txt", "C:\Dst\"

Veya aynı uzantıya sahip birden çok dosyayı taşıyabilirsiniz:

1 FSO.MoveFile "C:\Src\ *.xlsx", "C:\Dst\"

Veya bir klasördeki tüm dosyalar:

1 FSO.MoveFile "C:\Src\*", "C:\Dst\"

Dikkat edin, burada * joker karakterini kullanıyoruz.

* joker karakterini kullanmak yerine, bir klasördeki tüm dosyaları For Her döngüsü kullanarak taşıyabilirsiniz.

12345678910111213141516 Alt FSOMoveAllFiles ()FSO'yu Yeni FileSystemObject Olarak DimDize Olarak Yoldan KarartDize Olarak ToPath'i DimFileInFromFolder'ı Nesne Olarak KarartFromPath = "C:\Src\"ToPath = "C:\Dst\"FSO'yu ayarla = CreateObject("Scripting.FileSystemObject")FSO.GetFolder(FromPath).Files İçindeki Her FileInFromFolder içinFileInFromFolder.Path'e TaşıSonraki FileInFromFolderAlt Bitiş

Dosyayı Yeni Bir Klasöre Taşı

Dosyaları yeni oluşturulan bir klasöre de taşıyabilirsiniz. Bunu yapmak için komutu ekleyin

1 MkDir "C:\Dst\"

hedef yolu bildirmeden önce.

1234567891011121314151617 Alt FSOMoveAllFiles ()FSO'yu Yeni FileSystemObject Olarak DimDize Olarak FromPath DimDize Olarak ToPath'i DimFileInFromFolder'ı Nesne Olarak KarartFromPath = "C:\Src\"MkDir "C:\Dst\"ToPath = "C:\Dst\"FSO'yu ayarla = CreateObject("Scripting.FileSystemObject")FSO.GetFolder(FromPath).Files İçindeki Her FileInFromFolder içinFileInFromFolder.Path'e TaşıSonraki FileInFromFolderAlt Bitiş

VBA Kodu Örnekleri Aramaktan Bıktınız mı? AutoMacro'yu deneyin!

Klasörleri Taşı

Klasörleri taşımak için MoveFolder analog yöntemini kullanabilirsiniz.

1234567 Alt FSOMoveFolder()FSO'yu Yeni FileSystemObject Olarak DimFSO'yu ayarla = CreateObject("Scripting.FileSystemObject")FSO.MoveFolder "C:\OldFolder", "C:\Dst\NewFolder"Alt Bitiş

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave