Bonjour à toutes et tous,

J'ai une macro qui me permet d'ouvrir l'explorateur afin de choisir un fichier.
Elle fonctionne bizarrement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Sub Ouvrir_Explorateur_ChoixFichier()
 
    Dim fd As FileDialog
    Dim nomFichier As String
    Dim nomFeuille As String
    Dim cellule As String
    Dim valeur As Variant
    Dim wb As Workbook
 
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
 
    If fd.Show = 0 Then ' Gestion bouton Annuler
       GoTo Annuler
    End If
 
    If fd.Show = -1 Then
        nomFichier = fd.SelectedItems(1) ' Récupère le nom du fichier sélectionné
    End If
 
    Set wb = Workbooks.Open(nomFichier, ReadOnly:=False)
 
    Sheets("La feuille").Activate
 
With Sheets("La feuille")
    Dim lastRow1 As Long
    lastRow1 = .Cells(.Rows.Count, "A").End(xlUp).Row
    Range("A2:B" & lastRow1).Clear
End With
 
Annuler:
 
End Sub
Lignes 12 à 14 et 30 sont là pour le Bouton "Annuler" => fonctionne car ferme l'explorateur.
Si je ne les mets pas, en cas de clic sur le bouton la macro bugge ligne 20. Et c'est normal puisqu'il n'est pas géré.

A partir de la ligne 16 => Sélection et ouverture du fichier sélectionné.
Si je sélectionne un fichier et que je veux l'ouvrir, l'explorateur se réouvre une 2de fois. Je re choisi mon fichier et à ce moment là il s'ouvre.
Si je clique sur "Annuler" la macro bugge ligne 20.
Ces 2 phénomènes disparaissent si je ne mets pas lignes 12 à 14 et 30. J'ai essayé d'autres possibilités mais rien n'aboutit.

Je n'arrive pas à m'en dépatouiller.

Merci pour votre aide.

Philippe