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. 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
  2. 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
  3. 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. premièrement tu est dans quel éditeur !!!! par ce que ce code et dans VB.NET
      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. 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