IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ouverture explorateur et gestion des boutons [XL-2019]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2018
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2018
    Messages : 270
    Points : 239
    Points
    239
    Par défaut Ouverture explorateur et gestion des boutons
    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

  2. #2
    Membre expérimenté
    Inscrit en
    Décembre 2002
    Messages
    898
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 898
    Points : 1 402
    Points
    1 402
    Par défaut
    Salut, essaie comme ceci:

    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
        Dim result As Variant ' Nouvelle variable pour stocker le résultat de fd.Show
     
        Set fd = Application.FileDialog(msoFileDialogFilePicker)
     
        result = fd.Show ' Stocke le résultat de la boîte de dialogue dans result
     
        If result = 0 Then ' Gestion bouton Annuler
           Exit Sub
        End If
     
        If result = -1 Then
            nomFichier = fd.SelectedItems(1) ' Récupère le nom du fichier sélectionné
        End If
     
        Set wb = Workbooks.Open(nomFichier, ReadOnly:=False)
     
        ' Reste du code...

  3. #3
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2018
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2018
    Messages : 270
    Points : 239
    Points
    239
    Par défaut
    Bonjour Franc,

    Merci pour votre réponse qui fonctionne parfaitement.

    Quand on lit le code, c'est tellement évidant.
    Et une leçon de plus.
    Merci

    Philippe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion des Boutons & Cases à Cocher
    Par FIRE_FR dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/12/2007, 17h19
  2. gestion des boutons
    Par Clorish dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 07/06/2007, 15h26
  3. [DOM] DOM et gestion des boutons radio
    Par Ricou13 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 28/01/2007, 20h58
  4. [VB.NET] Gestion des boutons d'un formulaire
    Par dinbougre dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/01/2005, 10h35
  5. gestion des boutons d'une manette : relachement
    Par backfire dans le forum DirectX
    Réponses: 1
    Dernier message: 05/01/2005, 11h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo