Boucle pour ouvrir fichiers Excel

Bonsoir,

Je voudrais à partir de mon fichier ouvrir uniquement des fichiers excel se trouvant dans le même dossier que mon fichier.

J'ai bien trouvé une solution mais ne fait pas exactement ce que je voudrais obtenir. En exécutant la macro, seul un fichier excel s'ouvre alors qu'il y en a 2 (classeur1.xlsx et test.xls).

En vous remerciant par avance.

ps: ci-joint dossier zipper contenant quelques fichiers légers pour test.

26test.zip (27.00 Ko)

Bonsoir, en vous mettant en "mode pas à pas" vous auriez compris ce qui se passe... par ordre alphabétique, on tombe sur "classeur1" il est ouvert, le message est affiché, il est fermé, on passe à la suite, la suite ? C'est "monFichier" ! si c'est différent de "monfichier" on fait le code sinon on sort de la boucle... et c'est ce qui se passe... donc pas d'ouverture de test.xls...

vbMBHB

Une proposition de code :

Option Explicit
'cette macro n'ouvre qu'un seul fichier
Sub Boucle_Fichiers_Dossier()
'ouvrir à partir de ce fichier tous les fichiers excel se trouvant dans le même répertoire
    Dim Fichier As String, Chemin As String, Wb As Workbook
    Chemin = ThisWorkbook.Path
    Fichier = Dir(Chemin & "\*.xls*")
    'boucle pour ouvrir les fichiers excel uniquement
    Do
        If Fichier = "" Then Exit Do
        If Fichier <> "MonFichier.xlsm" Then
            Set Wb = Workbooks.Open(Chemin & "\" & Fichier)
            'suite de la procedure
            MsgBox Fichier & " est ouvert"
            Application.DisplayAlerts = False
            Wb.Close True
            Application.DisplayAlerts = True
            Set Wb = Nothing
        End If
        Fichier = Dir()
    Loop
End Sub

vbMBHB

Bonsoir, en vous mettant en "mode pas à pas" vous auriez compris ce qui se passe... par ordre alphabétique, on tombe sur "classeur1" il est ouvert, le message est affiché, il est fermé, on passe à la suite, la suite ? C'est "monFichier" ! si c'est différent de "monfichier" on fait le code sinon on sort de la boucle... et c'est ce qui se passe... donc pas d'ouverture de test.xls...

vbMBHB

En effet, en mode pas à pas je m'en suis aperçu. C'est à cause de la boucle while .... Loop. N'ayant pas d'idée, j'ai sollicité de l'aide.

Merci.

La correction du code vous convient-elle ?

vbMBHB

Pardon, je n'avais pas vu le "résolu"...

Merci.

vbMBHB

Merci beaucoup, ton code est parfait.

Toute ma gratitude. Bonne année, meilleurs vœux.

Merci ! Egalement pour vous pour le reste.

vbMBHB

Rechercher des sujets similaires à "boucle ouvrir fichiers"