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 :

Ré initialisation Userform


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 73
    Par défaut Ré initialisation Userform
    Bonjour à tous,

    j'ai un fichier où les feuilles ne sont pas visibles car l'application a été mise en invisible
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.visible = false
    Donc à l'ouverture j'ai un Userform qui s'ouvre et l'utilisateur se doit de remplir les différents champs qui l'intéresse.
    Au moment de valider, une msgbox lui demande s'il veut faire une nouvelle demande. Si oui alors, l'userform du départ se réinitialise.

    Mon problème est sur ce point là, dans ma commande j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    If MsgBox("Souhaitez-vous faire une nouvelle demande ?", vbYesNo, "Fermer ou Nouvelle Demande...") = vbYes Then
        Unload Me
        usfConges.Show
    Else
    Unload Me
    ActiveWorkbook.Close False
    End If
    End Sub
    Le hic est quand le code arrive à Unload me, il prend en compte le Queryclose de mon userform qui contient le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim sh As Worksheet
    Unload Me
    Application.Visible = True
    For Each sh In Sheets
     sh.Visible = True
    Next sh
    ActiveWorkbook.Close False
    End Sub
    Résultat, il me ferme l'application.

    Ce que j'aimerai c'est appeler le programme de mon Userform lors de l'initialisation (Private sub userform_initialize()) lors de la commande Oui pour faire une nouvelle demande.
    Est-ce possible ?
    Si ce n'est pas possible, qu'avez-vous comme solution ?

    Merci... Cordialement,
    PLV.

  2. #2
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    application.enableevents=false
    unload me
    application.enableenvents = true
    2

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 73
    Par défaut
    Bonjour EngueEngue,

    la partie de ta réponse doit être placée où exactement ?
    Dans la commande de mon bouton Valider ou dans le Queryclose de mon USF ?

    L'explication de ton code : en gros tu bloques l'application, puis tu réinitialises l'userform puis tu débloques l'application...

    A quoi va me servir l'userform.hide ? car lui il ferme l'USF met n'efface pas les données... enfin moi je dis ça mais je n'y connais pas grand chose, la preuve je suis dans le forum à chercher une réponse...

    Cdlt,
    PLV

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Je n'avais pas compris ta question... C'est tout simple. enlève le querry close et mets le dans ton VB. ou alors mets tous tes champs à "" et recopie le code de ton initialize dans ton vbyes

    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
    If MsgBox("Souhaitez-vous faire une nouvelle demande ?", vbYesNo, "Fermer ou Nouvelle Demande...") = vbYes Then
        Unload Me
        usfConges.Show
    Else
    Dim sh As Worksheet
     
    Application.Visible = True
    For Each sh In Sheets
     sh.Visible = True
    Next sh
    ActiveWorkbook.Close False
    Unload Me
    End Sub
    End If
    End Sub

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 73
    Par défaut
    OK pour rassembler mon code dans le QueryClose...

    Le problème c'est que j'ai beaucoup en code dans mon initialisation lors de l'ouverture de mon USF.
    Je ne peux pas tout simplement appeler la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub userform_initialize()

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 73
    Par défaut
    Juste une question supplémentaire...

    N'existe pas une solution qui appellerait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub userform_initialize()
    un peu comme on appelle une fonction via Call...

    Cdlt,
    PLV

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

Discussions similaires

  1. Problème sur initialisation userform
    Par Tikalins dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/07/2015, 17h11
  2. [XL-2010] Initialisation USERFORM modification données
    Par BENNASR dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 17/12/2014, 15h45
  3. [XL-2010] Initialiser UserForm et ComboBox dans une macro
    Par Phifou dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/02/2014, 16h02
  4. Problème initialisation UserForm
    Par pipo159 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2008, 23h57
  5. Réponses: 10
    Dernier message: 27/05/2007, 20h24

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