Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

GCFRG

XLDnaute Occasionnel
Bonjour le forum, est-ce possible d'assigné en une seule opération la valeur .visible=false/true à plusieurs textbox en une seule opération plutôt que de taper pour chaque textbox me.texbox1.visible = false.
Peut-être en les regroupant en collection ou en groupe, mais là je ne sais pas faire.:confused:
Si quelqu'un à 1 idée ?
Merci d'avance

Gilbert
 

Staple1600

XLDnaute Barbatruc
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Bonsoir

En bouclant sur les controls
Me.Controls("TextBox" & i).Visible=true

Autre solution
Code:
Private Sub UserForm_Click()
Dim Ctrl As Control
For Each Ctrl In Controls
If TypeName(Ctrl) = "TextBox" Then Ctrl.Visible = False
Next Ctrl
End Sub
 
Dernière édition:

GCFRG

XLDnaute Occasionnel
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Merci JM, dans mon cas la 1ère solution convient parfaitement, toutes mes textbox n'étant pas à planquer,
j'ai écrit
if checkbox10.value = true then
dim i as byte
dim j as byte
For i = 27 To 34
Me.Controls("TextBox" & i).Visible = True
Next i
for j = 40 to 54
Me.Controls("TextBox" & j).Visible = True
Next j
else
For i = 27 To 34
Me.Controls("TextBox" & i).Visible = False
Next i
for j = 40 to 54
Me.Controls("TextBox" & j).Visible = False
Next j
end if

L'autre solution s'applique pour tous les textbox présent dans le USF ou la frame ?
Merci encore.
avec vous j'avance au moins
@+
Gilbert
 

Staple1600

XLDnaute Barbatruc
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Re

Par convention les déclarations se déclarent au début du module

sub toto()
dim i as byte
dim j as byte


L'autre solution prend en compte les controles placés sur l'userform
 

TooFatBoy

XLDnaute Barbatruc
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Exact pour la remarque sur la déclaration des variables. ;)
Surtout que dans le cas présent, les variables ne sont déclarées que si checkbox10.value est égal à True...


En ce qui concerne ton code, le IF me semble inutile et une seule variable suffit :
Code:
dim i as byte
For i = 27 To 34
Me.Controls("TextBox" & i).Visible = checkbox10.value
Next i
for i = 40 to 54
Me.Controls("TextBox" & i).Visible = checkbox10.value
Next i
 
Dernière édition:

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Bonjour,

Cache tous les contrôles à l'intérieur d'un frame:

Code:
Me.Frame1.Visible = False


Code:
For Each c In Me.Frame1.Controls
 c.Visible = True
Next c

JB
 

GCFRG

XLDnaute Occasionnel
Re : Assigner A Plusieurs Textbox La Valeur Visble A True Ou False

Bonjour, à tous, et un grand merci pour toutes vos explications
je vais pouvoir réduire mon code de plusieurs dizaines de lignes, plus j'en apprend, plus mon code se réduit, et devient bien plus "lisible":).

Bon Dimanche

à très bientôt sur le forum
Gilbert
 

Discussions similaires

Statistiques des forums

Discussions
312 185
Messages
2 086 018
Membres
103 094
dernier inscrit
Molinari