ComboBox

Résolu
Salut,

Me revoilà avec toujours ma base de donnée de licenciés, j'avance pas mal mais je suis souvent bloqué par des petits soucis, je m’explique : j’ai des ‘combobox’, j’utilise la propriété ‘rowsource’ pour afficher automatiquement les valeurs existantes dans ma bas,et là pas de problème.
Par contre quand je relance mon ‘userform’ pour une nouvelle saisie ou recherche, il affiche dans les ‘combobox’ le texte précédemment saisi . . . je voudrai donc « vider » les ‘combobox’ à chaque initialisation du ‘userform’, sans pour autant supprimer ma liste déroulante bien entendu.
J’ai tenté ça :

Private Sub formulaire_Initialize()

Nom.Clear
Prenom.Clear
Licence.Clear
Naissance.Clear
Adresse.Clear
Mail.Clear
Fixe.Clear
Portable.Clear
Paye.Clear

End Sub


Mais ça ne fait rien….

HELP :)

--
L'informatique est à la société ce que la femme est au monde. . . c'est compliqué mais on ne peut s'en passer ;)
Configuration: asus P5V800 / P4 2,8 Ghz / 1,5 Go Windows XP FireFox / IE 7

9 réponses

  1. Salut,

    Teste ça:

    Nom.Text = ""
    Prenom.Text = ""
    Licence.Text = ""
    Naissance.Text = ""
    Adresse.Text = ""
    Mail.Text = ""
    Fixe.Text = ""
    Portable.Text = ""
    Paye.Text = ""

    Je suppose que Nom, Prenom etc sont les noms de tes ComboBoxes.

    ;o)
    1
    1. Re
      Merci pour la réponse tu supose bien mais...celà ne marche toujours pas...la synthaxe Initialize est bien bonne ?
      0
      1. Si formulaire est le nom de ta UserForm, oui c'est correct.

        Quand tu dis : "Quand je relance mon userform ..." ça veut dire quoi exactement ?

        L'as-tu fermé auparavant ? si oui, comment ?
        0
        1. re desolé j'étai en week-end . . .
          Donc j'ai un bouton sur mon classeur excel "creation fiche" qui lance mon formulaire avec un 'formulaire.Show',j'ai activé le 'rowsource' dans la propriété de mes combobox pour qu'en tapant les premieres lettres les résultats possibles s'affichent.....sur mon userform (Name:formulaire) j'ai 4 bouton: creer,rechercher,modifier,annuler.
          Alors je rempli les combobox puis je clic sur créer là mon formulaire se ferme 'formulaire.Hide' et là si je reclic sur mon bouton "creation fiche" le formulaire se réouvre mais avec les combobox déjà remplies par els valeurs précédement entrées. . . . .

          ai-je étai plus clair?
          0
        2. @informatifienessaye de mettre formulaire.close()
          0
      2. Modérateur
        Salut,
        Un petit lien super méga sympa si tu utilises des userform : silkyroad Michel_m me l'a passé, je te le refiles à mon tour.
        De là on peux en déduire ceci : (je te donne le code pour 3 contrôles, ça peux toujours servir...)

        Sub initialisation()
        Dim Ctrl As Control
        For Each Ctrl In Controls
        If TypeName(Ctrl) = "TextBox" Then Ctrl.Object.Value = ""
        If TypeName(Ctrl) = "ComboBox" Then Ctrl.Object.Value = ""
        If TypeName(Ctrl) = "CheckBox" Then Ctrl.Object.Value = False
        Next Ctrl
        End Sub

        Au "lancement" de ton UserForm tu saisis :
        Call initialisation
        0
        1. Bonjour,

          Ou alors décharger le formulaire de la mémoire en replacant Formulaire.Hide par Unload (Formulaire).
          Hide ne ferme pas le formulaire, il le cache et donc reste en mémoire. Unload ferme et vide la mémoire.

          ;o)
          0
          1. Modérateur
            Effectivement, l'ouverture et la fermeture d'un userform se font par load Userform et Unload Userform. Je confirme ta proposition comme étant la meilleure solution (en clair je plussoie...)
            0
        2. Contributeur
          bonjour

          quand je relance mon ‘userform’ pour une nouvelle saisie ou recherche, il affiche dans les ‘combobox’ le texte précédemment saisi

          Lorsque tu fermes ton userform par hide probablement, il te suffit de rajouter Unload Me pour qu'à la prochaine relance tes combobox soient vierges.

          edit : Désolé polux31 et pikaju, j'avais laissé trainer cette fenêtre.
          0
          1. et bien merci pour toutes ces réponses..j'ai donc remplacé 'formulaire.Hide' par 'formulaire.Unload' mais quand je clic donc sur créer il me met ce message d'erreur:

            erreur de compilation

            Membre de methode ou de données introuvable

            . . . . . .
            0
            1. Modérateur
              Unload Formulaire (comme je t'ai indiqué au dessus) et inversement Load Formulaire
              0
            2. @pijakuok ca marche les combo se vident bien par contre le load formulaire marche pas.... mais j'ai remi le .Show et ca roule j'ai d'autres questions mais je supose que je dois ouvrir un autre topic et mettre cuilà en resolu n'est ce pas?
              0
          2. re,

            Tu peux continuer sur celui là, si ça tourne autour du même problème.

            Si le problème est tout autre, oui, il vaut mieux mettre celui là en résolu et ouvrir un autre topic.

            ;o)
            0
            1. Bon alors merci à tous pour ce 2° problème résolu ;)
              0