See õpetus näitab, kuidas kasutada FileSystemObjecti meetodit MoveFile.
Failide teisaldamine VBA FileSystemObject abil
MoveFile meetod teisaldab ühe või mitu faili ühest asukohast teise.
Määrake VBA viide
Esiteks, kui kasutate FileSystemObjects, peate võib-olla määrama viite VB skripti käitusajale: avage Visual Basic Editor (ALT+F11), valige rippmenüüst Tools> References ja märkige ruut "Microsofti skriptide käitusaeg".
FileSystemObject
Teiseks peate looma FileSystemObject:
12 | Dim FSO uue failisüsteemi objektinaMäära FSO = CreateObject ("Scripting.FileSystemObject") |
Nüüd on teil juurdepääs MoveFile'ile ja muudele FileSystemObject Methods meetoditele.
VBA programmeerimine | Koodigeneraator töötab teie jaoks!
Teisalda üks fail
Ühe faili teisaldamiseks võite kasutada FSO lihtsat süntaksit. MoveFile (allikas, sihtkoht).
1 | FSO.MoveFile "C: \ Src \ TestFile.txt", "C: \ Dst \ ModTestFile.txt" |
Nagu eespool mainitud, peate esmalt looma FileSystemObject:
1234567 | Alam FSOMoveFile ()Dim FSO uue failisüsteemi objektinaMäära FSO = CreateObject ("Scripting.FileSystemObject")FSO.MoveFile "C: \ Src \ TestFile.txt", "C: \ Dst \ ModTestFile.txt"End Sub |
Teisalda mitu faili
Saate teisaldada mitu sama nimega faili:
1 | FSO.MoveFile "C: \ Src \ TestFile*.txt", "C: \ Dst \" |
Või teisaldage mitu sama laiendiga faili:
1 | FSO.MoveFile "C: \ Src \ *.xlsx", "C: \ Dst \" |
Või lihtsalt kõik failid kaustast:
1 | FSO.MoveFile "C: \ Src \*", "C: \ Dst \" |
Pange tähele, siin kasutame * metamärki.
Selle asemel, et kasutada * metamärki, saate teisaldada kõik failid kaustas, kasutades iga silmust.
12345678910111213141516 | Alam FSOMoveAllFiles ()Dim FSO uue failisüsteemi objektinaDim fromPath kui stringDim ToPath kui stringDim FileInFromFolder kui objektFromPath = "C: \ Src \"ToPath = "C: \ Dst \"Määra FSO = CreateObject ("Scripting.FileSystemObject")Iga FileInFromFolder kohta FSO.GetFolder (FromPath). FailidFileInFromFolder.Move toPathJärgmine FileInFromFolderEnd Sub |
Teisalda fail uude kausta
Saate faili (d) teisaldada ka vastloodud kausta. Selleks lisage käsk
1 | MkDir "C: \ Dst \" |
enne sihtkoha tee deklareerimist.
1234567891011121314151617 | Alam FSOMoveAllFiles ()Dim FSO uue failisüsteemi objektinaDim fromPath kui stringDim ToPath kui stringDim FileInFromFolder objektinaFromPath = "C: \ Src \"MkDir "C: \ Dst \"ToPath = "C: \ Dst \"Määra FSO = CreateObject ("Scripting.FileSystemObject")Iga FileInFromFolder kohta FSO.GetFolder (FromPath). FailidFileInFromFolder.Move toPathJärgmine FileInFromFolderEnd Sub |
Kas olete väsinud VBA koodinäidete otsimisest? Proovige AutoMacrot!
Liiguta kaustu
Kaustade teisaldamiseks saate kasutada analoogmeetodit MoveFolder.
1234567 | Alam FSOMoveFolder ()Dim FSO uue failisüsteemi objektinaMäära FSO = CreateObject ("Scripting.FileSystemObject")FSO.MoveFolder "C: \ OldFolder", "C: \ Dst \ NewFolder"End Sub |