Userform:rendre inaccessible des textbox

Bonjour,

J'ai créé un userform contenant une checkbox et deux textbox.
Je souhaiterai qu'on ne puisse pas écrire dans les textbox si la checkbox n'a pas été cochée.
Comment puis-je faire?

Merci.
Configuration: Windows XP Microsoft Office 2007

6 réponses

  1. il faudrait que tu déclare ta checkboxe et tu lui donne un nom.

    de là, quand ta checkboxe -> est vide, elle correspondra à la valeur fausse
    -> est rempli, elle correspondre à la valeur vrai.

    il te suffira ensuite de placer une fonction SI "if" qui jouera avec ses deux valeur.

    En ce qui concerne de la programmation je peut pas t'aider plus ...!
    0
    1. Private Sub Checkbox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Checkbox1.CheckedChanged

      if Checkbox1.checked=true then

      textbox1.readonly=false
      textbox2.readonly=false

      else

      textbox1.readonly=true
      textbox2.readonly=true

      end if

      End Sub
      0
      1. Merci pour vos réponses.

        Badboy3 j'ai essayé ce que tu m'as envoyé et ça coince à la première ligne.

        Private Sub Checkbox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Handles CheckBox1.CheckedChanged

        ça me dit erreur de compilation: type défini par l'utilisateur non défini

        Une idée?
        0
    2. premièrement tu est dans quel éditeur !!!! par ce que ce code et dans VB.NET
      0
      1. J'utilise Excel 2007 donc je travaille avec VBA project. Désolée, je débute, je ne m'y connais pas trop...
        0
        1. je ne sais pas le code exactement en VBA :s
          mais la logique reste la même
          0
          1. Ok merci qd même.
            Est-ce que tu saurais par hasard si on peut mettre des conditions IF sur des comboBox?
            Je t'explique:

            J'ai une première comboBox1 qui propose l'entrée 1 et l'entrée 2.
            Ensuite j'ai une seconde comboBox2 qui propose les entrées a, b et c.
            Mais je voudrais que si l'entrée 2 est sélectionnée, alors ma comboBox2 propose les entrées a,b,c,d,e.

            J'ai essayé ça mais ça ne marche pas :

            ComboBox2.Clear
            ComboBox2.AddItem ("a")
            ComboBox2.AddItem ("b")
            ComboBox2.AddItem ("c")

            ComboBox1.Select
            If ComboBox1.Value = "2" Then

            ComboBox2.Clear
            ComboBox2.AddItem ("a")
            ComboBox2.AddItem ("b")
            ComboBox2.AddItem ("c")
            ComboBox2.AddItem ("d")
            ComboBox2.AddItem ("e")

            End If
            0
        2. je sais pas ci c'est la réponse ou non mais essayé :

          ComboBox1.Select
          If ComboBox1.Value = "2" Then

          ComboBox2.Clear
          ComboBox2.AddItem ("a")
          ComboBox2.AddItem ("b")
          ComboBox2.AddItem ("c")
          ComboBox2.AddItem ("d")
          ComboBox2.AddItem ("e")

          else

          ComboBox2.Clear
          ComboBox2.AddItem ("a")
          ComboBox2.AddItem ("b")
          ComboBox2.AddItem ("c")

          End If
          0
          1. Nan ça ne marche pas non plus. Je me rends compte que rien ne marche avec des If sur des comboBox. Je pense que ce n'est pas possible.

            Le problème c'est que je ne sais pas comment faire autrement!

            Merci pour ton aide.
            Bonne soirée
            0