Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

VBA : Comment copier un fichier d’un emplacement à un autre



Vous pouvez utiliser la méthode CopyFile dans VBA pour copier un fichier d’un dossier à un autre.

Voici une façon courante d’utiliser cette méthode dans la pratique :

Sub CopyMyFile()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

Cette macro particulière copie le fichier appelé soccer_data.txt d’un dossier appelé Some_Data_1 vers un dossier appelé Some_Data_2 .

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : Comment copier des fichiers à l’aide de VBA

Supposons que nous ayons un fichier texte appelé soccer_data.txt situé dans un dossier appelé Some_Data_1 sur notre bureau :

Supposons maintenant que nous souhaitions utiliser VBA pour copier ce fichier texte dans un autre dossier appelé Some_Data_2 sur notre bureau, qui contient actuellement deux fichiers texte :

Avant d’utiliser VBA pour copier ce fichier, nous devons d’abord activer Microsoft Scripting Runtime dans l’éditeur VB.

Pour ce faire, ouvrez l’éditeur VB, puis cliquez sur Outils , puis cliquez sur Références :

Dans la nouvelle fenêtre qui apparaît, faites défiler vers le bas jusqu’à voir Microsoft Scripting Runtime et cochez la case à côté. Cliquez ensuite sur OK .

Ensuite, nous pouvons créer la macro suivante pour copier le fichier :

Sub CopyMyFile()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source file and destination folder
SourceFile = "C:\Users\bob\Desktop\Some_Data_1\soccer_data.txt"
DestFolder = "C:\Users\bob\Desktop\Some_Data_2\"

'copy file
FSO.CopyFile Source:=SourceFile, Destination:=DestFolder

End Sub

Une fois cette macro exécutée, le fichier nommé soccer_data.txt sera copié du dossier Some_Data_1 vers le dossier Some_Data_2 :

Le fichier soccer_data.txt d’origine restera également dans le dossier Some_Data_1 :

Remarque : Vous pouvez trouver la documentation complète de la méthode CopyFile ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

Comment créer des dossiers à l’aide de VBA
Comment supprimer des dossiers à l’aide de VBA
Comment supprimer des fichiers à l’aide de VBA

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *