Comment ecrire plusieurs lignes dans une textbox
Trufinnette
Messages postés
1
Statut
Membre
-
pijaku Messages postés 13513 Statut Modérateur -
pijaku Messages postés 13513 Statut Modérateur -
Bonjour,
Je dois coder un logiciel pour mon école d'aéronautique, mais je ne connais ps grand chose à VBA, quelqu'un pourrait-il m'aider ?
Je dois rentrer le nom d'un constructeur dans une textbox, et le logiciel doit aller chercher dans une liste Excel toutes les lignes se rapportant à ce constructeur et les afficher dans une autre Texbox (appelé ici "UserForm1.Textbox_liste"). Pour le moment, j'arrive à afficher ce que je souhaite, le problème est qu'il écrit par dessus chaque recherche trouvée. Donc en gros, il ne m'affiche que la dernière ligne. Comment dois-je lui dire de revenir à la ligne entre chaque recherche ?
J'ai vu qu'il fallait que j'active "Multiline" dans les propriétés de ma textbox, c'est fait mais cela ne marche toujours pas.. Je ne sais plus quoi faire.
Quelqu'un pourrait-il m'aider svp ?
Mon code pour le moment:
Je dois coder un logiciel pour mon école d'aéronautique, mais je ne connais ps grand chose à VBA, quelqu'un pourrait-il m'aider ?
Je dois rentrer le nom d'un constructeur dans une textbox, et le logiciel doit aller chercher dans une liste Excel toutes les lignes se rapportant à ce constructeur et les afficher dans une autre Texbox (appelé ici "UserForm1.Textbox_liste"). Pour le moment, j'arrive à afficher ce que je souhaite, le problème est qu'il écrit par dessus chaque recherche trouvée. Donc en gros, il ne m'affiche que la dernière ligne. Comment dois-je lui dire de revenir à la ligne entre chaque recherche ?
J'ai vu qu'il fallait que j'active "Multiline" dans les propriétés de ma textbox, c'est fait mais cela ne marche toujours pas.. Je ne sais plus quoi faire.
Quelqu'un pourrait-il m'aider svp ?
Mon code pour le moment:
Sub rechercher_constructeur()
Dim Constructeur As String
Dim i As Integer
Constructeur = UserForm1.Textbox_Constructeur3
Sheets("Liste").Activate
Set Recherche3 = Range("C4:C" & derniere_ligne).Find(Constructeur, LookIn:=xlValues)
If Not Recherche3 Is Nothing Then
For i = 4 To derniere_ligne
UserForm1.Textbox_Liste = " Immatriculation Proprietaire Modèle d'aéronef Port d'attache " & Chr(10) & Chr(13) & vbNewLine
If Constructeur = Cells(i, 3) Then
UserForm1.Textbox_Liste = Cells(i, 1) & " " & Cells(i, 2) & " " & Cells(i, 4) & " " & Cells(i, 5) & Chr(10) & Chr(13) & vbNewLine
End If
Next i
Else
MsgBox "Le constructeur rentré n'est pas répertorié dans la liste."
End If
End Sub
A voir également:
- Comment ecrire plusieurs lignes dans une textbox
- Écrire plusieurs lignes dans une cellule excel mac - Guide
- Comment écrire # sur pc - Guide
- Ecrire en gras sur whatsapp - Guide
- Écrire en majuscule - Guide
- Comment ecrire @ sur un ordinateur ✓ - Forum Clavier
1 réponse
Bonjour,
Si ton textbox est multiline, entre d'abord toutes les données dans une variabme String, puis entre cette variable dans ton textbox :
Si ton textbox est multiline, entre d'abord toutes les données dans une variabme String, puis entre cette variable dans ton textbox :
Sub rechercher_constructeur()
Dim Constructeur As String
Dim i As Integer
Dim monTxt As String
Constructeur = UserForm1.Textbox_Constructeur3
Sheets("Liste").Activate
Set Recherche3 = Range("C4:C" & derniere_ligne).Find(Constructeur, LookIn:=xlValues)
If Not Recherche3 Is Nothing Then
For i = 4 To derniere_ligne
If Constructeur = Cells(i, 3) Then
monTxt = monTxt & Chr(10) & Chr(13) & Cells(i, 1) & " " & Cells(i, 2) & " " & Cells(i, 4) & " " & Cells(i, 5)
End If
Next i
UserForm1.Textbox_Liste = " Immatriculation Proprietaire Modèle d'aéronef Port d'attache " & Chr(10) & Chr(13) & monTxt
Else
MsgBox "Le constructeur rentré n'est pas répertorié dans la liste."
End If
End Sub