Bonjour le forum !
Premièrement je tiens à vous remercier car j'ai énormément appris grâce à ce forum, merci donc à vous tous qui y contribuez.
Mais voilà, premier gros blocage !
J'ai codé une interface à base de UserForms qui permet de gérer des BD grâce à un ID unique qu'elles possèdent.
A partir de mon UserForm1, j'aimerai récupérer l'ID inscrit dans une TextBox en cliquant sur un bouton, qui entraîne également l'ouverture de l'UserForm2 (qui possèdent un multipage), mettre cet ID dans une nouvelle TextBox et cliquer par macro sur le bouton rechercher qui affiche les informations sur la BD.
J'ai réussi mais en désactivant les .SetFocus, ce qui me pose problème car l'utilisateur peut utiliser l'UserForm2 pour effectuer sa recherche sans passer par l'USerForm1, et là les SetFocus ont leurs importances.
Premièrement, dans un module public j'ai déclaré une variable publique :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Public var As String
Dans mon bouton 1 de l'Userform 1 j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub CommandButton_modifInfos_Click() var = ID_BD.Value 'Je récupère la valeur de la TextBox Unload Me UserForm2.MultiPage1.Value = 1 UserForm2.Show End Sub
Et enfin dans l'Initialize de mon Userform2 j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub UserForm_Initialize() If var <> "" Then ID_BD3 = var 'Je remplis la TextBox Call CommandButton_rechercher2_Click var = "" End If End Sub
Avec ce code, l'opération marche. Hors j'ai également ces SetFocus qui sont important:
Dans la TextBox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Private Sub ID_BD3_Change() ' If Valeur = 14 And ID_BD3 Like "*GU*" Then ' ' CommandButton_rechercher2.SetFocus ' ' ElseIf Valeur = 18 And ID_BD3 Like "*KIT*" Then ' ' CommandButton_rechercher2.SetFocus ' ' End If End Sub
Dans le Multipage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Private Sub MultiPage1_Change() ' If MultiPage1.Value = 1 Then ' ' ID_BD3.SetFocus ' ' End If End Sub
Sauriez-vous comment régler ce problème ?
Je ne sais pas du tout dans quelle direction partir...
Merci d'avance pour votre aide !
Partager