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 :

Me.Controls.add sauvegarde non effectuée


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Par défaut Me.Controls.add sauvegarde non effectuée
    Bonjour tout le monde,

    j'ai un code qui ajoute un control dans une forme (USFModel).
    Lorsque j'execute ce code, tout se passe bien, et l'affichage de ma forme contient bien le control textbox ajouté et la caption du commandButton est bien modifiée.

    Lorsque je ferme ma forme, je retourne dans le VBEditeur ma forme n'est pas modifiée. Pourquoi donc??

    Je cherche depuis ce matin si il aurait un code genre me.save mais je ne trouve pas et lorsque je lis les codes sur les forums, personne ne relève ce problème

    Any idea??

    d'avance merci

    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
    18
    19
    20
    21
     Private Sub aa()
         Dim obj As Object
     
       '  Load USFModel
     
        USFModel.CommandButton1.Caption = "coucou"
     
        Set obj = USFModel.Controls.Add("forms.Textbox.1")
        With obj
            .Name = "monTextBox"
            .Left = 140
            .Top = 30
            .Width = 50
            .Height = 20
            .Visible = True
        End With
        Set obj = Nothing
    ' Unload USFModel
     USFModel.show
     
    End Sub

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par XineMA
    Lorsque je ferme ma forme, je retourne dans le VBEditeur ma forme n'est pas modifiée. Pourquoi donc??
    C'est normal -> Qui dit "dynamique" dit "volatile".
    Un contrôl créé dynamiquement disparaît à la désactivation de l'userform... et c'est heureux ! S'il ne disparaissait pas, à la prochaine activation de la form, tu aurais deux contrôles, à la suivante, trois... etc.
    Et c'est pas ça qu'on veut.
    Bill Gates l'a bien compris, allez !!!

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Par défaut
    Cela veut-il dire qu'il n'est pas possible de creer un Userform et ses controles dynamiquement?

    Je ne comprends pas quand tu dis qu'a l'activation suivante j'aurais un controle de plus.

    Mon code ne dépend pas du userform et est indépendant de celui-ci.



    j'avais ptetre pensé à un export avant désactivation puis un import...

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par XineMA Voir le message
    Cela veut-il dire qu'il n'est pas possible de creer un Userform et ses controles dynamiquement?
    Je n'ai pas dit ça, je dis simplement que si tu crées des contrôles en dynamique, il est normal qu'ils disparaissent à la désactivation de la form. Le comportement d'une form n'a rien à voir avec le comportement d'une feuille de calculs où tu peux ajouter tout ce que tu veux en dynamique et qui y reste. Images, boutons, zones de texte, graphique... etc.
    Selon les contrôles que tu veux ajouter, il y a de nombreux avantages à les créer dynamiquement.
    Qu'est-ce qui t'empêche de créer dynamiquement tes contrôles en début de procédure ?.
    Jète un oeil à DoEvents dans l'aide, puis un autre oeil dans la FAQ ici où SilkyRoad développe tout ça en long en large et en travers...
    Bon courage
    A+

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Edit
    Je viens de comprendre ton dilemme. Dans ton premier post, tu poses la question sur la création de contrôles en dynamique.
    Dans ton dernier post, tu poses la question de la création d'un userform en dynamique à incorporer dans ton projet.
    Ce n'est pas la même chose.
    Pour ajouter un userform à un projet, l'URL que je t'ai passée t'indique la voie à suivre. Pour ajouter dynamiquement lors de la création de l'userform, un contrôle dans CET Userform là, le code t'est également donné.
    Les restrictions dont j'ai fait état ( et zoidy aussi ) concernaient l'ajout dynamique et définif d'un contrôle dans un userform existant.
    Est-ce plus clair ?
    A+

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Par défaut
    en fait mon 2eme poste généralisait.

    Si j'ai bien compris on ajoute des contrôles à un userform existant et ceux-ci sont actifs le temps de l'activation.

    On crée un nouveau userform et ses contrôles et la

    je vais donc creer un nouveau userform sur base d'un existant et ajouter les controles que je voulais dans le userform existant.

    J'ai basé mon code sur la FAQ de SilkRoad qui est super bien faite mais j'étais partie d'un userform existant et ca fonctionnait bien sauf la "sauvegarde".

    Merci des infos, je laisse encore ce poste ouvert jusque demain.

    Merci de votre dévouement

  7. #7
    Membre confirmé Avatar de zoidy
    Inscrit en
    Avril 2006
    Messages
    184
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 184
    Par défaut
    Le truc c'est que tes controls créés dynamiquement n'existent que le temps de l'affichage du userform (donc entre le "userform.show" et le "unload userform").
    Donc ces controls ne seront modifiables que par code, jamais à partir de la Form de VBEditor.

    *Argh, devancé par Ousk' *

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

Discussions similaires

  1. [XL-2007] Sauvegarde non effectuée
    Par grisan29 dans le forum Macros et VBA Excel
    Réponses: 23
    Dernier message: 22/02/2013, 13h22
  2. PostgresSQL Sauvegarde non effectuée
    Par Invité dans le forum Hibernate
    Réponses: 1
    Dernier message: 20/02/2008, 15h52
  3. Ecriture sur fichier texte non effectuée
    Par lodan dans le forum Langage
    Réponses: 4
    Dernier message: 20/02/2007, 09h20
  4. Update non effectué
    Par nellynew dans le forum Access
    Réponses: 1
    Dernier message: 13/09/2006, 12h37
  5. [Upload] Upload de wav et renommage non effectué
    Par PuppeT mAsTer dans le forum Langage
    Réponses: 4
    Dernier message: 17/07/2006, 18h22

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