Bonjour,
Je fais appel à vous car je pense que vous pouvez m'aider à savoir pourquoi le code ci-dessous ne fonctionne pas.
Le but de cette partie du code est d'afficher des Textbox et des Label en fonction d'une valeur entrée par l'utilisateur.
Donc l'utilisateur entre une valeur dans "UserForm1.Textbox5" et en fonction de cette valeur un autre forme (UserForm2) est chargée. elle doit afficher un nombre de textbox égal à celui de la valeur entrée par l'utilisateur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Private Sub TextBox5_Change() 'Déclaration des variables Dim i As Integer Dim TextBox, Label As String 'Affiche le formulaire pour récupérer les numéros de ticket ITSM If UserForm1.TextBox5.Value > 0 Then For i = 1 To UserForm1.TextBox5.Value Step 1 Label = "UserForm2.Label" & CStr(i+1) & ".Visible" TextBox = "UserForm2.TextBox" & CStr(i) & ".Visible" Label = True TextBox = True Next i ... End Sub
Par exemple : s'il entre la valeur 5 je souaiterai afficher sur l'UserForm2 5 Textbox (et les 5 labels associés)
Note : le i+1 pour les labels viennent du fait que j'ai les objets suivants :
Label2 // Textbox1
Label3 // Textbox2
..
Label6 // Textbox5
Ca fonctionne avec le code ci-dessous, mais je pense qu'on peut y arriver avec un code plus optimisé.
N'hésitez pas à me demander s'il ce n'est pas asser clair, ou si le post n'est pas placé dans la bonne partie du forum.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 Select Case UserForm1.TextBox5.Value 'Test la valeur de la boite de texte Case Is = 1 UserForm2.TextBox1.Visible = True UserForm2.Label2.Visible = True UserForm2.TextBox2.Visible = False UserForm2.Label3.Visible = False UserForm2.TextBox3.Visible = False UserForm2.Label4.Visible = False UserForm2.TextBox4.Visible = False UserForm2.Label5.Visible = False UserForm2.TextBox5.Visible = False UserForm2.Label6.Visible = False Case Is = 2 UserForm2.TextBox1.Visible = True UserForm2.Label2.Visible = True UserForm2.TextBox2.Visible = True UserForm2.Label3.Visible = True UserForm2.TextBox3.Visible = False UserForm2.Label4.Visible = False UserForm2.TextBox4.Visible = False UserForm2.Label5.Visible = False UserForm2.TextBox5.Visible = False UserForm2.Label6.Visible = False Case Is = 3 UserForm2.TextBox1.Visible = True UserForm2.Label2.Visible = True UserForm2.TextBox2.Visible = True UserForm2.Label3.Visible = True UserForm2.TextBox3.Visible = True UserForm2.Label4.Visible = True UserForm2.TextBox4.Visible = False UserForm2.Label5.Visible = False UserForm2.TextBox5.Visible = False UserForm2.Label6.Visible = False Case Is = 4 UserForm2.TextBox1.Visible = True UserForm2.Label2.Visible = True UserForm2.TextBox2.Visible = True UserForm2.Label3.Visible = True UserForm2.TextBox3.Visible = True UserForm2.Label4.Visible = True UserForm2.TextBox4.Visible = True UserForm2.Label5.Visible = True UserForm2.TextBox5.Visible = False UserForm2.Label6.Visible = False Case Is = 5 UserForm2.TextBox1.Visible = True UserForm2.Label2.Visible = True UserForm2.TextBox2.Visible = True UserForm2.Label3.Visible = True UserForm2.TextBox3.Visible = True UserForm2.Label4.Visible = True UserForm2.TextBox4.Visible = True UserForm2.Label5.Visible = True UserForm2.TextBox5.Visible = True UserForm2.Label6.Visible = True End Select
Merci à tous,
Partager