Bestanden verplaatsen met vba (met voorbeeld)
U kunt de MoveFile- methode in VBA gebruiken om een bestand van de ene map naar de andere te verplaatsen.
Hier is een gebruikelijke manier om deze methode in de praktijk te gebruiken:
Sub MoveMyFile()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source file and destination file
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFile = "C:\Users\bob\Desktop\Some_Data_2\soccer_data.txt"
'move file
FSO.MoveFile Source:=SourceFile, Destination:=DestFile
End Sub
Deze specifieke macro verplaatst het bestand met de naam voetbal_data.txt van een map met de naam Some_Data_1 naar een map met de naam Some_Data_2 .
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: bestanden verplaatsen met VBA
Laten we zeggen dat we een tekstbestand hebben met de naam voetbal_data.txt in een map met de naam Some_Data_1 op ons bureaublad:
Laten we nu zeggen dat we VBA willen gebruiken om dit tekstbestand te verplaatsen naar een andere map met de naam Some_Data_2 op ons bureaublad, die momenteel twee tekstbestanden bevat:
Voordat we VBA gebruiken om dit bestand te verplaatsen, moeten we eerst Microsoft Scripting Runtime inschakelen in de VB-editor.
Om dit te doen, opent u de VB-editor, klikt u vervolgens op Extra en vervolgens op Referenties :
In het nieuwe venster dat verschijnt, scrolt u naar beneden totdat u Microsoft Scripting Runtime ziet en vinkt u het vakje ernaast aan. Klik vervolgens op OK .
Vervolgens kunnen we de volgende macro maken om het bestand te verplaatsen:
Sub MoveMyFile()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source file and destination file
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFile = "C:\Users\bob\Desktop\Some_Data_2\soccer_data.txt"
'move file
FSO.MoveFile Source:=SourceFile, Destination:=DestFile
End Sub
Zodra deze macro is uitgevoerd, wordt het bestand met de naam voetbal_data.txt verplaatst van de map Some_Data_1 naar de map Some_Data_2 :
Houd er rekening mee dat als u alle bestanden van de ene map naar de andere wilt verplaatsen, u de volgende syntaxis kunt gebruiken:
Sub MoveMyFile()
Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
'specify source and destination folders
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\*"
DestFile = "C:\Users\bob\Desktop\Some_Data_2\"
'move all files from source folder to destination folder
FSO.MoveFile Source:=SourceFile, Destination:=DestFile
End Sub
Deze specifieke macro verplaatst alle bestanden van de map Some_Data_1 naar de map Some_Data_2 .
Opmerking : u kunt hier de volledige documentatie voor de MoveFile- methode vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
Mappen maken met VBA
Hoe mappen te verwijderen met VBA
Hoe bestanden te verwijderen met VBA