Rendre visible une textbox sur valeur

Bonjour à tous,

Dans le cadre d'un projet je réalise un excel dans lequel j'utilise plusieurs macro, mon problème étant que dans un des mes userform j'ai de nombre checkbox que je voudrais rendre invisible. Je m'explique, ces checkbox sont lié a une cellule de mon classeur et je voudrais que lorsque rien n'est écrit dans cette cellule la checkbox concernée soit invisble pour l'utilisateur. Je vous mets en copie la partie de mon programme qui concerne ce problème, évidement il ne fonctionne pas

Private Sub Userform_Initialize()
If Worksheets("Feuil1").Range("O24: R24").Value = "" Then CheckBox.visibility = False

End Sub

Bonjour,

2 choses :

  • Je ne suis pas sûr que l'on puisse vérifier si une plage est vide de cette manière (cette syntaxe fonctionne en revanche pour une unique cellule) : Worksheets("Feuil1").Range("O24: R24").Value = ""
  • La propriété .Visibility n'existe pas, sauf erreur de ma part. La bonne syntaxe est .Visible = False

Un essai :

Private Sub Userform_Initialize()

If Application.CountA(Sheets("Feuil1").Range("O24:R24")) = 0 Then CheckBox.Visible = False Else CheckBox.Visible = True

End Sub

Salut tanguy2604,

Salut Pedro

lorsque rien n'est écrit dans cette cellule la checkbox concernée soit invisble

Ce n'est pas en faisant un test global sur une Range qu'on va s'en sortir...

A+

Merci beaucoup à vous deux de m'avoir répondu dans de si bref délai.

Effectivement Pedro ta solution fonctionne très bien pour mon cas

Bonne continuation sur ce forum

Bonjour,

Le test If n'étant pas nécessaire dans ce cas, j'y vais de ma petite modif du code de Pedro :

Private Sub Userform_Initialize()
    CheckBox.Visible = (Application.CountA(Sheets("Feuil1").Range("O24:R24")) > 0)
End Sub
Rechercher des sujets similaires à "rendre visible textbox valeur"