Hoe kopieer ik een excel-bestand met vba?

U kunt VBA-code gebruiken om een bestand (werkmap) van de ene map naar de andere te kopiëren, maar u kunt ook een bestand onder een andere naam naar dezelfde map kopiëren.

In deze zelfstudie zien we hoe u code in beide richtingen schrijft. Hier moet u het FileSystemObject gebruiken dat toegang biedt tot bestanden en mappen in Windows.

Kopieer een Excel-bestand naar een aparte map

 Sub myMacro() Dim myFile As Object Set myFile = CreateObject("Scripting.FileSystemObject") Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\", True) End Sub

Om de bovenstaande code te schrijven:

kopieer-een-Excel-bestand-naar-een-map
  1. Eerst moet u een variabele declareren.
  2. Vervolgens moet u het FileSystemObject opgeven voor de variabele die u zojuist hebt gedefinieerd.
  3. Vervolgens moet u de bronlocatie instellen in de “CopyFile” -methode.
  4. Stel aan het einde de maplocatie in waar u deze wilt plakken.

Wanneer u deze macro uitvoert , wordt het Excel-werkmaptekstbestand uit de map gekopieerd en op de locatie geplakt die we in de code hebben opgegeven.

specificeer-bestandssysteem-object

Kopieer een bestand en hernoem het

Wanneer u een bestand op dezelfde locatie probeert te kopiëren en plakken, is de kans groot dat VBA u een foutmelding geeft. In deze situatie is de beste manier om het bestand een andere naam te geven wanneer u het kopieert.

 Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\", True)

Hierboven ziet u de lijncode die ik in de vorige methode heb gebruikt. Nu hoeft u alleen in deze rij een wijziging aan te brengen. Voor de doellocatie moet u het bestand toevoegen dat u voor het nieuwe bestand wilt gebruiken.

 Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", "C:\Users\admin\Desktop\folder\test-file1.xlsx ", True)

Wanneer u deze code uitvoert, wordt het bestand (text-file.xlsx) uit de map gekopieerd en naar dezelfde map met een andere naam (test-file1.xlsx) gekopieerd.

kopieer een bestand en hernoem het
 Dim myFile As Object Set myFile = _ CreateObject("Scripting.FileSystemObject") Call myFile.CopyFile("C:\Users\admin\Desktop\folder\test-file.xlsx", _ "C:\Users\admin\Desktop\folder\test-file1.xlsx", True) End Sub

Voeg een reactie toe

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *