Dans cet article, nous allons explorer trois méthodes pour ouvrir un fichier Excel en utilisant des procédures VBA ou des macros.
Découvrez comment VBA peut simplifier votre quotidien en quelques lignes de code seulement ! Vous pouvez ouvrir, manipuler et gérer vos fichiers Excel de manière automatique et fluide.
Que vous soyez débutant en programmation ou un utilisateur avancé, cet article vous guidera pas à pas à travers trois méthodes essentielles pour ouvrir un fichier Excel en utilisant VBA.
Ouvrir un fichier Excel Via Windows Explorer
Dans le traitement de données, il est très fréquent d'avoir besoin d'ouvrir un fichier Excel dont le nom peut changer au fil du temps.
Utiliser Windows Explorer dans une application Excel VBA est une méthode particulièrement efficace pour sélectionner et ouvrir le fichier souhaité.
Avantages et inconvénients
| Avantages | Inconvénients |
|---|---|
| Permet de sélectionner facilement le fichier souhaité | Nécessite une action manuelle de l'utilisateur pour sélectionner le fichier |
| Pratique lorsque le nom du fichier change fréquemment | Moins adapté pour les tâches complètement automatisées |
| Interface utilisateur familière et intuitive | Risque d'erreur si l'utilisateur sélectionne le mauvais fichier |
| Flexibilité dans la sélection de différents types de fichiers | L'utilisateur doit connaître l'emplacement du fichier |
| Peut filtrer les fichiers par type (par exemple, .xlsx) | La procédure peut être interrompue si l'utilisateur annule la sélection |
Code VBA pour ouvrir un fichier Excel via Windows Explorer
Voici un exemple de code VBA qui utilise Windows Explorer pour ouvrir un fichier Excel :
Comprendre le code VBA

BLEU : Tous les mots appartenant au langage VBA
MAGENTA : Toutes les variables locales et publiques, arguments de procédures et de fonctions XLOneClick
ORANGE : Tous les noms de procédures et fonctions qui sont développées dans cette formation
VERT : Précédés d’une apostrophe, tous les commentaires insérés dans les procédures et fonctions
NOIR : Code utilisateur, énoncées, descriptions, explications
Copier le code
Sub WindowsExplorerOpenFileXlsx()
'Déclaration des variables
Dim wb As Workbook 'Variable Objet wb représentant un classeur
Dim XlsxFileFrom As String 'Variable String pour le chemin du fichier
'Définir le chemin par défaut pour Windows Explorer
If Excel.Application.Workbooks.Count > 0 Then
If Not Excel.Application.Workbooks(1).Path = vbNullString Then
ChDir (Excel.Application.Workbooks(1).Path)
Else
ChDir ("C:\")
End If
Else
ChDir ("C:\")
End If
'Ouvrir Windows Explorer pour sélectionner un fichier Excel .xlsx
XlsxFileFrom = Application.GetOpenFilename("Fichiers, *.xlsx", , "Sélectionner un fichier de données")
'Vérifier si un fichier a été sélectionné
If Not InStr(XlsxFileFrom, ".xlsx") = 0 Then
Set wb = Workbooks.Open(XlsxFileFrom)
' Traiter le fichier ouvert ici
Set wb = Nothing 'Libérer la mémoire de l'objet Workbook
Else
MsgBox "Aucun fichier sélectionné.", vbExclamation
End If
End Sub
Quel est mon niveau sur VBA Excel ?
Testez gratuitement votre niveau avec notre Quiz VBA Excel (≈ 7min)
Ouvrir un fichier Excel avec un chemin défini
Pour l'automatisation de tâches récurrentes dans Excel, il est préférable de ne pas demander à l'utilisateur de sélectionner un fichier Excel si le nom et le chemin de ce fichier sont connus. Cependant, il est nécessaire de vérifier si le fichier existe à l'emplacement spécifié.
Avantages et inconvénients
| Avantages | Inconvénients |
|---|---|
| Automatisation complète sans intervention de l'utilisateur | Nécessite que le chemin et le nom du fichier soient fixes |
| Gain de temps et réduction des erreurs humaines | Peut échouer si le fichier est déplacé ou renommé |
| Idéal pour les processus récurrents où le fichier est toujours au même emplacement | Moins flexible si plusieurs fichiers doivent être ouverts |
| Permet d'inclure des vérifications supplémentaires avant l'ouverture | Pas adapté pour les fichiers dont le nom change fréquemment |
| Simplifie le code en supprimant la nécessité d'une sélection manuelle | Risque d'erreurs si le chemin est mal configuré ou le fichier inexistant |
Code VBA pour ouvrir un fichier Excel avec un chemin défini
Voici un exemple de code VBA qui ouvre un fichier Excel dont le chemin est défini :
Comprendre le code VBA

BLEU : Tous les mots appartenant au langage VBA
MAGENTA : Toutes les variables locales et publiques, arguments de procédures et de fonctions XLOneClick
ORANGE : Tous les noms de procédures et fonctions qui sont développées dans cette formation
VERT : Précédés d’une apostrophe, tous les commentaires insérés dans les procédures et fonctions
NOIR : Code utilisateur, énoncées, descriptions, explications
Copier le code VBA
Sub FrozenPathOpenFileXlsx()
'Déclaration des variables
Dim wb As Workbook 'Variable Objet wb représentant un classeur
Dim XlsxFileFrom As String 'Variable String pour le chemin du fichier
'Chemin complet du fichier à ouvrir
XlsxFileFrom = "Chemin complet du fichier que l'on souhaite ouvrir"
'Vérifier si le fichier existe
If Dir(XlsxFileFrom) <> "" Then
Set wb = Workbooks.Open(XlsxFileFrom)
' Traiter le fichier ouvert ici
Set wb = Nothing 'Libérer la mémoire de l'objet Workbook
Else
MsgBox "Le fichier " & XlsxFileFrom & " n'existe pas", vbExclamation
End If
End Sub
🎁 Formation Excel VBA gratuite en ligne
Vous utilisez Excel régulièrement, mais certaines tâches vous prennent encore trop de temps ?
Avec VBA, vous pouvez automatiser vos fichiers et éviter les manipulations répétitives. Dans cette formation gratuite, vous allez apprendre à :
- Créer vos premières macros simplement
- Automatiser des tâches répétitives
- Structurer vos fichiers pour gagner en efficacité
- Construire un projet VBA complet
Un support PDF est également offert pour vous accompagner pas à pas.

Ouvrir un fichier Excel avec un chemin défini
Très souvent, les applications Excel VBA destinées au traitement de données automatisé sont localisées dans un répertoire portant le nom de l’application. Leur objectif est d’importer des données, de les traiter, puis d’exporter des données consolidées.
L’application doit donc ouvrir des fichiers ou importer des données à partir de tables externes situées dans un sous-répertoire du répertoire courant de l’application. Les noms des fichiers à ouvrir et les sous-répertoires dans lesquels ils sont localisés peuvent être paramétrés dans des variables, offrant ainsi une grande flexibilité dans la construction des chemins où sont localisés ces fichiers. L’ensemble du répertoire de l’application peut être copié et collé sous une autre racine ou sur une autre machine sans que le code de l’application n’ait besoin d’être mis à jour.
Avantages et inconvénients
| Avantages | Inconvénients |
|---|---|
| Flexibilité dans la gestion des chemins et des répertoires | Complexité accrue dans la gestion des chemins si mal structurée |
| Facilité de mise à jour et de déplacement du répertoire de l’application | Risque d'erreurs si les sous-répertoires sont mal définis ou déplacés |
| Automatisation complète sans intervention de l'utilisateur | Moins adapté pour les utilisateurs non techniques |
| Permet de structurer et d'organiser les fichiers de manière systématique | Peut nécessiter des ajustements pour différentes configurations de systèmes |
| Réutilisable et adaptable à différentes structures de dossiers | Risque de dépendance sur la structure spécifique des répertoires |
Code VBA pour ouvrir un fichier Excel avec un chemin paramétré
Dans cet exemple, nous allons voir comment ouvrir un fichier Excel localisé sous la racine de l’application, dans un répertoire nommé « DataBase » et un sous-répertoire nommé « Source ».
Comprendre le code VBA

BLEU : Tous les mots appartenant au langage VBA
MAGENTA : Toutes les variables locales et publiques, arguments de procédures et de fonctions XLOneClick
ORANGE : Tous les noms de procédures et fonctions qui sont développées dans cette formation
VERT : Précédés d’une apostrophe, tous les commentaires insérés dans les procédures et fonctions
NOIR : Code utilisateur, énoncées, descriptions, explications
Copier le code VBA
Sub ParametricPathToOpenFileXlsx()
'Déclaration des variables
Dim wb As Workbook
Dim CurrentPath As String 'Chemin du classeur courant
Dim MyFolder As String 'Sous-répertoire
Dim MySubfolder As String 'Sous-sous-répertoire
Dim XlsxFileFrom As String 'Nom du fichier
'Attribution des variables
CurrentPath = ThisWorkbook.Path
MyFolder = "DataBase"
MySubfolder = "Source"
XlsxFileFrom = "MyExcelFile"
'Construire le chemin complet du fichier
If Not Right(CurrentPath, 1) = "\" Then CurrentPath = CurrentPath & "\"
If Not MyFolder = "" And Not Right(MyFolder, 1) = "\" Then MyFolder = MyFolder & "\"
If Not MySubfolder = "" And Not Right(MySubfolder, 1) = "\" Then MySubfolder = MySubfolder & "\"
If Not UCase(Right(XlsxFileFrom, 5)) = ".XLSX" Then XlsxFileFrom = XlsxFileFrom & ".xlsx"
XlsxFileFrom = CurrentPath & MyFolder & MySubfolder & XlsxFileFrom
'Vérifier si le fichier existe
If Dir(XlsxFileFrom) <> "" Then
Set wb = Workbooks.Open(XlsxFileFrom)
' Traiter le fichier ouvert ici
Set wb = Nothing 'Libérer la mémoire de l'objet Workbook
Else
MsgBox "Le fichier " & XlsxFileFrom & " n'existe pas", vbExclamation
End If
End Sub
Aller plus loin : nos offres
Dans cet article, nous avons exploré trois méthodes efficaces pour ouvrir un fichier Excel avec VBA. Chaque méthode offre des avantages spécifiques selon le contexte d'utilisation, que ce soit pour des tâches récurrentes ou pour des besoins de flexibilité et d'automatisation :
- Ouvrir un fichier Excel via Windows Explorer : Idéal pour les situations où le nom du fichier change fréquemment, offrant une interface utilisateur familière pour sélectionner le fichier.
- Ouvrir un fichier Excel avec un chemin défini : Parfait pour les tâches automatisées récurrentes où le nom et le chemin du fichier sont connus, éliminant ainsi la nécessité d'une intervention manuelle.
- Ouvrir un fichier avec un chemin paramétré : Offre une grande flexibilité et permet de structurer les fichiers de manière systématique, facilitant ainsi la gestion des répertoires et l'adaptabilité à différents environnements.
En utilisant ces méthodes, vous pouvez automatiser et simplifier considérablement vos tâches Excel, augmentant ainsi votre efficacité et réduisant les risques d'erreurs humaines. Que vous soyez un débutant ou un utilisateur avancé de VBA, maîtriser ces techniques vous permettra de mieux gérer vos fichiers Excel et d'optimiser vos processus de travail.
L'automatisation avec VBA est une compétence précieuse qui peut transformer votre manière de travailler avec Excel. Bon coding et n'hésitez pas à découvrir notre offre de formation.
Progressez sur Excel VBA avec une formation sur mesure et éligible CPF
Vous souhaitez automatiser vos fichiers Excel et passer à un niveau vraiment opérationnel ? Notre formation VBA vous accompagne avec un formateur expert, sur vos propres besoins.
Vous allez apprendre à :
- Automatiser vos tâches répétitives
- Créer des macros utiles
- Structurer des outils fiables
- Gagner du temps au quotidien
Plus de 850 apprenants ont déjà été formés, avec une note de satisfaction de 9,7/10 en 2025 et plus de 14 000 heures de formation réalisées.





Félicitations ! Votre ebook Excel offert !
/ CPF