Comment copier un dossier dans VBA (avec exemple)



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

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

Sub CopyMyFolder()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"

'copy folder
FSO.CopyFolder Source:=SourceFolder , Destination:=DestFolder

End Sub

Cette macro particulière copie le dossier appelé current_data du dossier Documents vers le Bureau .

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

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

Supposons que nous ayons un dossier appelé current_data situé dans un dossier appelé Documents :

Supposons maintenant que nous souhaitions utiliser VBA pour copier l’intégralité de ce dossier sur le Bureau , qui contient actuellement deux dossiers :

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 dossier :

Sub CopyMyFolder()

Dim FSO As New FileSystemObject
Set FSO = CreateObject("Scripting.FileSystemObject")
    
'specify source folder and destination folder
SourceFolder = "C:\Users\bob\Documents\current_data"
DestFolder = "C:\Users\bob\Desktop\"

'copy folder
FSO.CopyFolder Source:=SourceFolder , Destination:=DestFolder

End Sub

Une fois cette macro exécutée, le dossier nommé current_data sera copié du dossier Documents vers le bureau :

Le dossier current_data d’origine restera également dans le dossier Documents .

Remarque : Vous pouvez trouver la documentation complète de la méthode CopyFolder 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 répertorier les fichiers dans un dossier à l’aide de VBA

Ajouter un commentaire

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