Copie de fichier VBA

Fonction Excel VBA FileCopy

La copie de fichier est une fonction vba intégrée utilisée pour copier le fichier d'un emplacement vers un autre emplacement mentionné. Pour utiliser cette fonction, nous devons mentionner le chemin du fichier actuel et le chemin du fichier de destination.

Ok, regardons la syntaxe de la fonction FileCopy.

  • Source: Ce n'est rien d'autre que l'endroit d'où nous devons copier le fichier. Nous devons mentionner le chemin d'accès complet au dossier.
  • Destination: Il s'agit du dossier de destination dans lequel nous devons coller le fichier copié.

Exemples

Vous trouverez ci-dessous des exemples de copie de fichiers à l'aide du code VBA.

Vous pouvez télécharger ce modèle Excel de copie de fichier VBA ici - Modèle Excel de copie de fichier VBA

Exemple 1

Commençons par un exemple simple. J'ai un fichier nommé «Ventes avril 2019» dans le dossier. Ci-dessous, l'image de la même « Source ».

À partir de l'emplacement ci-dessus, je souhaite copier ce fichier et le coller dans un autre dossier. Ci-dessous, l'image de la même « source de destination».

Ok, écrivons le code pour cela.

Ouvrez la fonction FileCopy dans la procédure Sub.

Code:

 Sous FileCopy_Example1 ()

FileCopy

End Sub

Maintenant, pour le premier argument, nous devons mentionner le chemin du fichier où se trouve notre courant.

Code:

 Sous FileCopy_Example1 ()

FileCopy "D: \ My Files \ VBA \ April Files

End Sub

Après avoir mentionné le chemin du dossier, nous devons également mentionner le fichier avec l'extension de fichier. Alors mentionnez le nom du fichier en mettant une barre oblique inverse (\).

Code:

 Sous FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", End Sub 

Maintenant, dans le deuxième argument, mentionnez où nous devons coller le fichier copié.

Code:

 Sub FileCopy_Example1 () FileCopy "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx", "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx" End Sub 

Une chose que nous devons faire ci-après en mentionnant le chemin du dossier à la fin, nous devons également mentionner le nom du fichier dans l'argument de destination.

Maintenant, exécutez le code en utilisant la touche F5 ou manuellement puis, il copiera le fichier de l'emplacement ci-dessous vers un emplacement de destination.

«D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx»

«D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx»

Exemple # 2 - Utilisez des variables pour stocker le chemin source et le chemin de destination.

Dans l'exemple précédent, nous avons fourni le chemin source et le chemin de destination directement à la formule. Mais ce n'est pas la meilleure pratique pour continuer, alors stockons les dans des variables.

Pour un exemple, regardez le code ci-dessous.

Code:

 Sub FileCopy_Example2 () Dim SourcePath As String Dim DestinationPath As String SourcePath = "D: \ My Files \ VBA \ April Files \ Sales April 2019.xlsx" DestinationPath = "D: \ My Files \ VBA \ Destination Folder \ Sales avril 2019. xlsx "FileCopy SourcePath, DestinationPath End Sub 

Laissez-moi vous expliquer le code en détail.

J'ai d'abord déclaré deux variables.

 Dim SourcePath As String Dim DestinationPath As String 

Ensuite, pour la première variable, j'ai attribué le chemin du dossier à partir duquel il doit copier le fichier et le nom du fichier avec son extension de fichier.

SourcePath = "D: \ Mes fichiers \ VBA \ April Files \ Sales April 2019.xlsx"

Pour la deuxième variable de la même manière, j'ai attribué le chemin du dossier de destination avec le nom de fichier et l'extension Excel.

DestinationPath = "D: \ My Files \ VBA \ Destination Folder \ Sales April 2019.xlsx"

Ensuite, pour la formule FileCopy, j'ai fourni ces variables au lieu de longues chaînes de chemin de dossier.

FileCopy SourcePath, DestinationPath

De cette manière, nous pouvons utiliser des variables pour stocker les chemins et les utiliser efficacement.

Exemple # 3 - Erreur avec la fonction de copie de fichier

Parfois, la fonction de copie de fichier rencontre une erreur «Autorisation refusée».

La raison pour laquelle nous obtenons cette erreur est que lorsque le fichier de copie est ouvert et que vous essayez de copier l'erreur ci-dessus, fermez toujours le fichier et exécutez le code.