Verplaats bestanden met VBA FileSystemObject (MoveFile)

Deze zelfstudie laat zien hoe u de MoveFile-methode van het FileSystemObject gebruikt.

Verplaats bestanden met VBA FileSystemObject

De methode MoveFile verplaatst een of meer bestanden van de ene naar de andere locatie.

VBA-referentie instellen

Ten eerste, wanneer u FileSystemObjects gebruikt, moet u mogelijk een verwijzing naar de runtime-bibliotheek van het VB-script instellen: open de Visual Basic Editor (ALT+F11), selecteer Extra > Referenties in het vervolgkeuzemenu en vink het selectievakje van 'Microsoft Scripting Runtime'.

BestandssysteemObject

Ten tweede moet u het FileSystemObject maken:

12 Dim FSO als nieuw bestandssysteemobjectStel FSO = CreateObject ("Scripting.FileSystemObject") in

Nu hebt u toegang tot MoveFile en de andere FileSystemObject-methoden.

VBA-programmering | Code Generator werkt voor u!

Eén bestand verplaatsen

Om een ​​enkel bestand te verplaatsen, kunt u de eenvoudige syntaxis van FSO.MoveFile( source, destination ) gebruiken.

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

Zoals hierboven vermeld, moet u eerst het FileSystemObject maken:

1234567 Sub FSOMoveFile()Dim FSO als nieuw bestandssysteemobjectStel FSO = CreateObject ("Scripting.FileSystemObject") inFSO.MoveFile "C:\Src\TestFile.txt", "C:\Dst\ModTestFile.txt"Einde sub

Meerdere bestanden verplaatsen

U kunt meerdere bestanden met delen met dezelfde naam verplaatsen:

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

Of u kunt meerdere bestanden met dezelfde extensie verplaatsen:

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

Of gewoon alle bestanden uit een map:

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

Let op, hier maken we gebruik van het * jokerteken.

In plaats van het * jokerteken te gebruiken, kunt u alle bestanden in een map verplaatsen met een For Each-lus.

12345678910111213141516 Sub FSOMoveAllFiles ()Dim FSO als nieuw bestandssysteemobjectDim van pad als stringDim ToPath As StringDim FileInFromFolder als objectFromPath = "C:\Src\"ToPath = "C:\Dst\"Stel FSO = CreateObject ("Scripting.FileSystemObject") inVoor elke FileInFromFolder in FSO.GetFolder(FromPath).FilesFileInFromFolder.Move ToPathVolgende BestandInFromFolderEinde sub

Verplaats bestand naar een nieuwe map

U kunt de bestanden ook naar een nieuw gemaakte map verplaatsen. Voeg hiervoor het commando . toe

1 MkDir "C:\Dst\"

voordat u het bestemmingspad aangeeft.

1234567891011121314151617 Sub FSOMoveAllFiles ()Dim FSO als nieuw bestandssysteemobjectDim van pad als stringDim ToPath As StringDim FileInFromFolder als objectFromPath = "C:\Src\"MkDir "C:\Dst\"ToPath = "C:\Dst\"Stel FSO = CreateObject ("Scripting.FileSystemObject") inVoor elke FileInFromFolder in FSO.GetFolder(FromPath).FilesFileInFromFolder.Move ToPathVolgende BestandInFromFolderEinde sub

Moe van het zoeken naar voorbeelden van VBA-codes? Probeer AutoMacro!

Mappen verplaatsen

Voor het verplaatsen van mappen kunt u de analoge methode MoveFolder gebruiken.

1234567 Sub FSOMoveFolder()Dim FSO als nieuw bestandssysteemobjectStel FSO = CreateObject ("Scripting.FileSystemObject") inFSO.MoveFolder "C:\OldFolder", "C:\Dst\NewFolder"Einde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave