Annuler avec : Application.GetOpenFilename

Résolu
Bonjour les amis et bon dimanche à tous,
La macro de mon classeur cijoint me pressente un seul petit problème , une fois ouverte et me demande d'ouvrir un fichier si je clique sur "ouvrir" elle marche sans problème mais lorsque je clique sur "annuler" elle me de propose de fermer le classeur les boites de dialogue s'ouvrent etc.....
je veux ajouter une ligne après ces deux lignes :

Dim Fich As String, CD, ar, nm
Fich = Application.GetOpenFilename

pour que si je clique sur annuler , une msgbox s'ouvre ayant comme text "vous avez annulé l’importation du fichier" et sortir de la macro sans me proposer de fermer le classeur etc.....

le fichier joint
https://www.cjoint.com/c/JBxmE4o11vy

cordialement,

Configuration: Windows / Chrome 79.0.3945.130

3 réponses

  1. Merci infiniment Patrice
    j'ai changé le nom de "cd" par un autre nom et le code marche correctement maintenant
    0
    1. Le code s’arrête ici :

      0
      1. Bonjour,

        1) Fich doit être typé Variant
        2) Tester Fich pour savoir si c'est la touche Annuler

        Option Explicit
        Sub Test()
        Dim Fich As Variant
          Fich = Application.GetOpenFilename
          If Fich = False Then
            MsgBox "Vous avez annulé l’importation du fichier", vbInformation
            Exit Sub
          End If
          MsgBox "Vous allez importer le fichier :" & vbLf & Fich
        End Sub
        

        1
        1. Salut Patrice
          Comme je ne suis pas trop doué en vba je n'ai pas pu insérer correctement les modifications que vous m'avez proposé
          je serai très reconnaissant si vous m'envoyez la macro entière
          Merci encore une fois
          0
        2. @noe2008Il faudrait publier le code entier de la macro pré-existante et expliquer ce qu'elle est sensée réaliser.

          Utilises les balises de code avec indication du langage (=coloration syntaxique)
          Explications disponibles ici : Comment utiliser les balises de code
          Exemple :
          Sub UtiliserLesBalises()
            MsgBox "Merci d'utiliser les balises de code"
          End Sub
          0