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 :

Un Unload qui ne décharge rien du tout [XL-2000]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Par défaut Un Unload qui ne décharge rien du tout
    Bonjour à tous, me revoilà pour de nouvelles aventure

    Voila, j'ai plein plein d'user form, et une fois qu'une est remplie, l'utilisateur est censé cliquer sur OK, ce qui mémorise sa saisie , affiche l'autre feuille, et décharge celle sur laquelle il vient de cliquer.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Private Sub AcqPuissanceReactiveOK_Click()
     
    Call RecupDonnee(AcqPuissanceReactive, TABAcqPreactive)
     
    AcqTension.Show
    Unload Me
     
    End Sub
    Sauf que le Unload Me n'unload rien du tout, la preuve en image:


    Alors au début je m'en tapais un peu car a la fin un End me nettoyait tout ça, mais la je reboucle sur une feuille qui était censé être fermée, et Excel me balance "Feuille déjà affiché, affichage modal impossible".

    Donc bon, je suis un peu largué...

    Merci d'avance pour vos solutions

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    soit userformx le nom du userform récalcitrant :

    Il est vraisemblable que tu as mis un userformx.show dans un évènement activate d'un autre userform.

  3. #3
    Membre confirmé Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Par défaut
    Alors non, je n'utilise pas de méthode Activate, et les noms des UF ne sont utilisés que pour être affichée.

    Le bout de code plus haut est valable pour toutes les UF, seule le nom de l'actuelle dans la fonction et de la prochaine (UF_next.show) change.

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bon...

    Montre-bous donc le code mis dans ton userform nommé AcqTension
    (pour chacun de ses évènements : Activate, Initialise, etc...)

  5. #5
    Membre confirmé Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Par défaut
    Le voici

    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
    Option Explicit
     
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
        If CloseMode = 0 Then Cancel = True
    End Sub
     
    Private Sub UserForm_Initialize()
     
    If NouvelAmenagement Then
    Call GriseCaseAcqGroupe(AcqTension)
    ' Fonction de pré remplissage
        Else
        If EditAmenagement Then
        'Fonction de récuperation de données dans Excel
        End If
    End If
    End Sub
    Les commentaires, c'est les fonctions que je n'ai pas encore faite

  6. #6
    Membre confirmé Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Par défaut
    Bouh je suis nul...

    Je viens de trouver une alternative, dans le UserForm_Initalize de la fenetre qui s'ouvre, je fait un Unload de la précédente et pouf, plus de fenêtre.

    Par contre je suis très sceptique, cela revient a dire que tout le code que je mettrai en dessous de User_form.show ne serait pas exécuté par la macro??

    EDIT: Oups pour le double post, je pensais avoir éditer le précédent

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Tu es gentil, mais :
    Que font exactement tes :
    ' Fonction de pré remplissage
    et
    'Fonction de récuperation de données dans Excel
    ??

    Car si l'une ou l'autre évoque un autre userform (ou l'un ou plusieurs des objets qu'il contient) pour le remplir, ma foi ...
    (la seule évocation d'un objet d'un userform, je te le rappelle, génère le chargement de l'userform concerné !)

  8. #8
    Membre confirmé Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Par défaut
    Citation Envoyé par Brebiou Voir le message
    Les commentaires, c'est les fonctions que je n'ai pas encore faite
    Ce sont des fonctions qui n'existent pas (le commentaire et juste la pour me rappeler de l'appeler a cet endroit) et qui ne feront appel qu'a des variables globales, et seulement au TextBox de l'UF en cours (ici AcqTension)

    Citation Envoyé par Brebiou Voir le message
    Par contre je suis très sceptique, cela revient a dire que tout le code que je mettrai en dessous de User_form.show ne serait pas exécuté par la macro??
    Je marque quand même résolu même si je suis très perplexe quand a ma citation.

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

Discussions similaires

  1. [XL-2013] Locked qui ne lock rien du tout
    Par tmlpqsdpmdlc dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 18/03/2015, 14h01
  2. Réponses: 2
    Dernier message: 22/01/2015, 13h31
  3. [Spip] #TEXTE qui n'affiche rien du tout
    Par oceane751 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 03/09/2008, 18h59
  4. ScrollBar qui ne scroll rien du tout
    Par keub51 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 18/04/2008, 14h38
  5. Réponses: 1
    Dernier message: 05/11/2007, 15h03

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