VBA Kopier fil / projektmappe

VBA giver dig mulighed for at kopiere en fil ved hjælp af FileSystemObject. I denne vejledning lærer du, hvordan du kopierer og omdøber en bestemt fil.

Hvis du vil lære at omdøbe en fil, kan du klikke på dette link: VBA Omdøb fil

Kopiér en fil / projektmappe

Vi viser, hvordan du kopierer den eksisterende fil Prøvefil 1.xlsx i mappen VBA -mappe. I dette eksempel vil vi ikke omdøbe filen, bare kopiere og overskrive den. Mappen har i øjeblikket kun denne ene fil:

Billede 1. Fil i mappe C: \ VBA -mappe

Her er koden:

12345 Dim oFSO som objektIndstil oFSO = CreateObject ("Scripting.FileSystemObject")Ring til oFSO.CopyFile ("C: \ VBA Folder \ Sample file 1.xlsx", "C: \ VBA Folder \", True)

Du skal først oprette objektet for klassen Scripting.FileSystemObject:

1 Indstil oFSO = CreateObject ("Scripting.FileSystemObject")

Så kan vi bruge metoden CopyFile:

1 Ring til oFSO.CopyFile ("C: \ VBA Folder \ Sample file 1.xlsx", "C: \ VBA Folder \", True)

Metodens første parameter er kildebanen, og den anden er destinationsstien. Den tredje parameter er Overskriv. Da vi har samme kilde- og destinationsveje, skal vi indstille Overskriv til sand eller falsk. I dette eksempel sætter vi True, hvilket betyder, at den originale fil er overskrevet.

Lad os nu se, hvad der sker, hvis vi har de samme destinationer, men sæt Overskriv til Falsk. Du skal bare ændre denne linje i koden:

1 Ring til oFSO.CopyFile ("C: \ VBA Folder \ Sample file 1.xlsx", "C: \ VBA Folder \", True)

Som følge heraf får du en fejl, som du kan se på billede 2:

Billede 2. Fejl ved kopiering af filen

Kopier og omdøb en fil

En anden mulig mulighed ved kopiering af en fil er at omdøbe den. Det ligner at kopiere en fil, men nu skal du bare angive destinationssti med et andet navn. Her er koden:

12345 Dim oFSO som objektIndstil oFSO = CreateObject ("Scripting.FileSystemObject")Ring til oFSO.CopyFile ("C: \ VBA Folder \ Sample file 1.xlsx", "C: \ VBA Folder \ Sample file Copy.xlsx")

Som du kan se fra den sidste linje i koden, vil vi kopiere filen Prøvefil 1.xlsx i den samme mappe og navngiv den Eksempelfil Copy.xlsx:

1 Ring til oFSO.CopyFile ("C: \ VBA Folder \ Sample file 1.xlsx", "C: \ VBA Folder \ Sample file Copy.xlsx")

Nu har vi to filer i VBA -mappen. Resultatet af koden er i billede 3:

Billede 3. Kopier og omdøb filen

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave