Comment afficher un message box? [Résolu/Fermé]

Messages postés
61
Date d'inscription
lundi 25 septembre 2017
Statut
Membre
Dernière intervention
6 décembre 2017
- - Dernière réponse : muiigisha
Messages postés
61
Date d'inscription
lundi 25 septembre 2017
Statut
Membre
Dernière intervention
6 décembre 2017
- 9 nov. 2017 à 08:37
Bonjour,
Désolée le libellet de mon sujet ne dit pas clairement mon problème mais plus de place ...bref
j'ai plusieurs modules dans mon code où dans le getopenfilename j'autorise la sélection de 2 fichiers seulement j'aimerai afficher un message d'alerte si un seul est sélectionné ou rien du tout au lieu d'avoir un bug mais je ne trouve pas comment faire en faisant comme d'habitude (c'est-à-dire lorsque c'est un seul fichier sélectionné et mettant le msgBox) j'ai l'erreur type mismatch.

Merci d'avance pour votre aide.


Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
14795
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2019
1177
1
Merci
Re,


Mieux comme ca:
Sub FileName()
    Dim FichiersAOuvrir
    FichiersAOuvrir = Application.GetOpenFilename(, , , , True)
    If VarType(FichiersAOuvrir) <> vbBoolean Then
        If IsArray(FichiersAOuvrir) And UBound(FichiersAOuvrir, 1) > 1 Then
            For i = LBound(FichiersAOuvrir, 1) To UBound(FichiersAOuvrir, 1)
                'Ouvre les fichiers sélectionnés
                Workbooks.Open FichiersAOuvrir(i)
            Next i
        Else
            MsgBox "Files not Found. Choose 2 files", vbExclamation, "!! Warning !!"
        End If
    Else
        MsgBox "No chosen file", vbExclamation, "!! WARNING !!"
    End If
End Sub

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 64050 internautes nous ont dit merci ce mois-ci

muiigisha
Messages postés
61
Date d'inscription
lundi 25 septembre 2017
Statut
Membre
Dernière intervention
6 décembre 2017
-
Super merci
Messages postés
14795
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2019
1177
muiigisha
Messages postés
61
Date d'inscription
lundi 25 septembre 2017
Statut
Membre
Dernière intervention
6 décembre 2017
-
merci f894009,
mais j'ai toujours l'erreur type mismatch à moins que je ne l'ai mal adapté à mon code

Dim Quelfichier() As Variant
Quelfichier = Application.GetOpenFilename("Excel Files (*.csv), *.csv", 2, "Sélection des fichiers", , True)

If Not Array(Quelfichier) Then
'Displaying a message if file not choosed in the above step
MsgBox "Files not Found. Choose 2 files", vbExclamation, "!! Warning !!"
Exit Sub
End If
Messages postés
8741
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 octobre 2019
436
0
Merci
et ainsi?
 Dim  Quelfichier() As Variant
Quelfichier = Application.GetOpenFilename("Excel Files (*.csv), *.csv", 2, "Sélection des fichiers", , True)
Dim ok As Boolean
   ok = False    
    If (VarType(Quelfichier) = vbArray + vbVariant) Then
        If UBound(Quelfichier, 1) - LBound(Quelfichier, 1) + 1 = 2 Then
            ok = True
        End If
    End If
    If Not ok Then
        'Displaying a message if file not choosed in the above step
        MsgBox "Files not Found. Choose 2 files", vbExclamation, "!! Warning !!"
        Exit Sub
   End If
Messages postés
14795
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2019
1177
0
Merci
Bonjour a vous deux,

Sub FileName()
FichiersAOuvrir = Application.GetOpenFilename(, , , , True)
If IsArray(FichiersAOuvrir) And UBound(FichiersAOuvrir, 1) > 1 Then
For i = LBound(FichiersAOuvrir, 1) To UBound(FichiersAOuvrir, 1)
    'Ouvre les fichiers sélectionnés
    Workbooks.Open FichiersAOuvrir(i)
Next i
Else
 MsgBox "Files not Found. Choose 2 files", vbExclamation, "!! Warning !!"
End If
End Sub
yg_be
Messages postés
8741
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 octobre 2019
436 -
bonjour, cela donne type "mismatch" dans le cas où getopenfilename retourne un boolean plutôt qu'une array de variants.
f894009
Messages postés
14795
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
17 octobre 2019
1177 > yg_be
Messages postés
8741
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 octobre 2019
-
Re,
Ok, sur annuler selection fichier
Messages postés
61
Date d'inscription
lundi 25 septembre 2017
Statut
Membre
Dernière intervention
6 décembre 2017
0
Merci
Merci à tous les deux et surtout pour vos promptes réactions,
j'ai finalement utilisé celui de f894009 parce que je comprenais mieux les les instructions et commandes qu'il a utilisées, merci yg_be(je suis disposée à comprendre si tu veux bien m'expliquer, je suis là pour apprendre).
Et pour l'erreur dont yg_be parlait je ne l'ai pas eu quand j'ai compilé.

Merci encore à vous.