Premikanje datotek z VBA FileSystemObject (MoveFile)

Ta vadnica bo pokazala, kako uporabiti metodo MoveFile za FileSystemObject.

Premikanje datotek z VBA FileSystemObject

Metoda MoveFile premakne eno ali več datotek z ene lokacije na drugo.

Nastavite referenco VBA

Najprej boste morali pri uporabi FileSystemObjects nastaviti sklic na knjižnico časa izvajanja skripta VB: odprite urejevalnik Visual Basic (ALT+F11), v spustnem meniju izberite Orodja> Reference in potrdite polje "Microsoft Scripting Runtime".

FileSystemObject

Drugič, morate ustvariti FileSystemObject:

12 Zatemni FSO kot nov datotečni sistemObjektNastavite FSO = CreateObject ("Scripting.FileSystemObject")

Zdaj imate dostop do MoveFile in drugih metod FileSystemObject.

Programiranje VBA | Generator kod deluje za vas!

Premakni eno datoteko

Če želite premakniti eno datoteko, uporabite preprosto sintakso FSO.MoveFile (vir, cilj).

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

Kot je navedeno zgoraj, morate najprej ustvariti FileSystemObject:

1234567 Sub FSOMoveFile ()Zatemni FSO kot nov datotečni sistemObjektNastavite FSO = CreateObject ("Scripting.FileSystemObject")FSO.MoveFile "C: \ Src \ TestFile.txt", "C: \ Dst \ ModTestFile.txt"End Sub

Premakni več datotek

Lahko premaknete več datotek z istim imenom:

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

Lahko pa premaknete več datotek z isto razširitvijo:

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

Ali preprosto vse datoteke iz mape:

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

Upoštevajte, da tukaj uporabljamo nadomestni znak *.

Namesto * nadomestnega znaka * lahko vse datoteke v mapi premaknete z zanko Za vsak.

12345678910111213141516 Sub FSOMoveAllFiles ()Zatemni FSO kot nov datotečni sistemObjektZatemni FromPath As StringZatemni ToPath kot nizZatemni datoteko FileInFromFolder kot objektFromPath = "C: \ Src \"ToPath = "C: \ Dst \"Nastavite FSO = CreateObject ("Scripting.FileSystemObject")Za vsako datoteko FileInFromFolder v datoteki FSO.GetFolder (FromPath)FileInFromFolder.Move ToPathNaslednji FileInFromFolderEnd Sub

Premakni datoteko v novo mapo

Datoteke lahko premaknete tudi v novo ustvarjeno mapo. Če želite to narediti, dodajte ukaz

1 MkDir "C: \ Dst \"

preden razglasite ciljno pot.

1234567891011121314151617 Sub FSOMoveAllFiles ()Zatemni FSO kot nov datotečni sistemObjektZatemni FromPath As StringZatemni ToPath kot nizZatemni datoteko FileInFromFolder kot objektFromPath = "C: \ Src \"MkDir "C: \ Dst \"ToPath = "C: \ Dst \"Nastavite FSO = CreateObject ("Scripting.FileSystemObject")Za vsako datoteko FileInFromFolder v datoteki FSO.GetFolder (FromPath)FileInFromFolder.Move ToPathNaslednji FileInFromFolderEnd Sub

Utrujen od iskanja primerov kode VBA? Preizkusite AutoMacro!

Premakni mape

Za premikanje map lahko uporabite analogno metodo MoveFolder.

1234567 Sub FSOMoveFolder ()Zatemni FSO kot nov datotečni sistemObjektNastavite FSO = CreateObject ("Scripting.FileSystemObject")FSO.MoveFolder "C: \ OldFolder", "C: \ Dst \ NewFolder"End Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave