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 :

Probléme shell avec userform [Toutes versions]


Sujet :

Macros et VBA Excel

  1. #1
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut Probléme shell avec userform
    Bonjour,

    Dans mon usf, lorsque je clique sur un bouton, je veux ouvrir un repertoire, et il s'ouvre bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Cb7_Click()
    mychemin = "explorer.exe " & TB2.Text
    Retval = Shell(mychemin, vbNormalFocus)
    End Sub
    Et ensuite tout se bloque et ma macro se trouve en arrêt sur le bouton de la feuille qui affiche l'usf.

    Ca fait 1 heure que je bloque, toute aide est la bienvenue.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub CommandButton1_Click()
     
        Uexp.Show
     
    End Sub
    Edit: Le code suivant pour l'ouverture => même probléme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Cb7_Click()
     
    mychemin = "explorer.exe " & TB2.Text
    a = "CMD.EXE /c " & Chr(34) & mychemin & Chr(34)
    Shell a
     
    End Sub
    Edit2 : Si je reste dans les commandes excel pas de problème par exemple je n'ai pas le soucis ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Cb7_Click()
    MsgBox "toto"
    Exit Sub

  2. #2
    Membre expérimenté Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Par défaut
    Question bête : Pourquoi tu n'utilises pas les FileDialog pour ouvrir un explorateur permettant de choisir un/des fichier(s)/dossier(s)?

    J'avoue, je contourne un peu le problème et peut-être que ce que je te dis ne convient pas?

  3. #3
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Merci, j'utilise deja toutes sortes de moyens de selection de fichier, dans un textbox, j'ai un nom de repertoire de destination, je voudrai simplement que l'utilisateur puisse l'ouvrir en cliquant dessus ou sur un bouton.

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Je ne sais pas ce qu'il y a dans ton TB2.Text mais pour activer un répertoir définit faut mettre le chemin complet, C:\Rep\SousRep
    A+

  5. #5
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Bonjour,


    J'ai bien le nom du repertoire complet, et il s'ouvre bien lorsque je clique sur mon bouton, le problème que je ne comprend pas bien, c'est que ma macro se bloque sur UEXP.show contenu dans le code de bouton de ma feuille.

    Cela ne se produit qu'avec shell, si je met par exemple MSGBOX "test", aucun soucis, la boite s'affiche, je fait ok et je retourne sur mon userform.

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    J'ai testé le code comme tu le met pour l'explorer et il n'y a aucun problème.
    j'ai même essayé avec un chemin non valide, ça ne plante pas, juste que l'explorer n'est pas initialiser sur un répertoir.

    mais tu dis..
    le problème que je ne comprend pas bien, c'est que ma macro se bloque sur UEXP.show contenu dans le code de bouton de ma feuille
    .
    Quand le bébogueur revient sur l'appel de l'UF c'est qu'il y à une erreur dans l'UF.
    Après la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Retval = Shell(mychemin, vbNormalFocus)
    met un Stop ou un arret et ensuite du pas à pas pour arriver sur l'erreur.

  7. #7
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Quand le bébogueur revient sur l'appel de l'UF c'est qu'il y à une erreur dans l'UF.
    Je me disais la même chose, mais il n'y a rien d'autre, quoiqu'il en soit je refais des tests et reviens donner des précisions.
    A+

  8. #8
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Est-ce que la référence OleAutomation est activée ?
    Suis pas certain que c'est ça, mais comme ça fonctionne chez moi !!

  9. #9
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Oui la référence est bien activée, peut être il y a t il un bug dans mon excel (certaines macro du boulot, font des choses bizarres par exemple quand j'en lance une ensuite VBA m'ouvre une fenetre et je dois cliquer sur continuer)
    je ne peux pas rebouter mon PC pour l'instant, ce que je ferai ce midi.

    J'ai fait un usf simple et j'ai le même problème :

    un bouton sur une feuille qui lance un USF.
    Sur l'USF deux boutons, un pour ouvrir, l'autre pour fermer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
    UserForm1.Show
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub CommandButton1_Click()
    mychemin = "explorer.exe " & ThisWorkbook.Path
    Retval = Shell(mychemin, vbNormalFocus)
    End Sub
     
    Private Sub CommandButton2_Click()
    MsgBox "test"
    Unload UserForm1
    End Sub
    => Quand je clique sur le bouton 1, la fenetre de l'explorateur s'ouvre, je reviens sur l'usf et la une ligne en jaune sur userform1.show

  10. #10
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Oui, surement un problème avec ton excel, j'ai tester exactement ton code et ça fonctionne impec.
    A+

  11. #11
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Ok, merci beaucoup, comme ça je sais

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

Discussions similaires

  1. [XL-2010] Probléme VBA avec userform
    Par jeremV dans le forum Macros et VBA Excel
    Réponses: 34
    Dernier message: 06/01/2014, 15h21
  2. Problème shell avec vb 2008
    Par walid kh dans le forum VB.NET
    Réponses: 5
    Dernier message: 07/04/2010, 12h48
  3. Problème avec Userform
    Par jalseth dans le forum Général VBA
    Réponses: 2
    Dernier message: 12/09/2008, 00h01
  4. Problème intermitant avec userform
    Par frolland46 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/08/2008, 22h27
  5. problème avec userform
    Par sash6 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 14/08/2007, 17h03

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