Programme pour liste déroulante

Bonjour,

j'ai une fiche ou l'on doit choisir entre reponse 1 ou réponse 2
voici mon programme

Private Sub CBX_Typ_LostFocus()

If CBX_Typ <> "reponse1" And CBX_Typ <> "reponse2" Then
CBX_Typ = ""
End If

End Sub

cependant cela fonctionne si 1 et 2 sont écris dans ma feuille de calcul
mais je ne souhaite pas que ces données soient dans la feuille de calcul mais uniquement dans le programme

comment faire !!
merci

8 réponses

  1. Bonsoir del8679,

    Quand vous dites 'dans le programme', c'est dans le code VBA du formulaire ?
    0
    1. oui dans le code VBA
      0
      1. Bonsoir,

        CBX_Typ est une ComboBox ?
        Dans laquelle, les items sont reponse1 et reponse2 ?

        Si oui, je ne vois pas où est le problème !!
        0
      2. Bonjour,

        le soucis c'est que réponse 1 réponse 2 se répètent une dizaine de fois !

        Private Sub CBX_Typ_Change()

        CBX_Typ.AddItem "réponse1"
        CBX_Typ.AddItem "réponse2"

        End Sub

        je ne comprends pas
        0
    2. Bonjour del8679,

          Private Sub CBX_Typ_Change()
              CBX_Typ.AddItem "réponse1"
              CBX_Typ.AddItem "réponse2"
          End Sub

      Ce code va ajouter "réponse1" et "réponse2" à chaque changement de la ComboBox.

      Ce qu'il faut faire:
      Initialiser la ComboBox avec la procédure Activate ou Initialize du formulaire .. A ce moment là, la ComboBox s'initialise en ajoutant les deux items et pas plus, car cette procédure n'est plus appelée par la suite.

      La procédure :
          Private Sub CBX_Typ_Change()
              code
          End Sub
      sert à mettre un code qui exécute des actions en fonction du choix de l'item de la ComboBox.

      Cordialement.
      0
      1. j'ai essayé cela et ça ne fonctionne toujours pas

        Private Sub CBX_Typ_Activate()

        If CBX_Typ <> "Annuité constante" And CBX_Typ <> "Amortissement constant" Then
        CBX_Typ = ""
        End If

        With CBX_Typ
        .AddItem "Annuité constante"
        .AddItem "Amortissement constant"
        End With

        End Sub
        0
        1. Bonjour del8679,

          Qu'est-ce qui ne fonctionne pas ?
          0
          1. les éléments de la liste déroulante apparaissent 4 fois
            0
            1. faut-il modifier quelque chose dans les propriétés de la comobox ?

              de plus l'utilisateur peut écrire autre chose que les élements de la liste déroulante

              j'ai tout essayé !
              merci d'avance
              0
              1. Bonsoir del8679,

                de plus l'utilisateur peut écrire autre chose que les éléments de la liste déroulante .. il faut mettre la propriété style à 2 - fmStyleDropDownList.

                faut-il modifier quelque chose dans les propriétés de la comobox ? .. Il faudrait tout le code de la feuille "UserForm" pour voir ce qui cloche !

                Bonne soirée.
                0