Alors quand j'essaye d'adapter le code de Daniel, j'ai remarqué que si la colonne qui remplie la compobox contient juste des numeros cela fait planter l'USF pour erreur 13 : incompatibilité de type. Je n'arrive pas à comprendre pourquoi. (j'ai essayé de mettre le format de la cellue à texte mais cela ne change rien)
Si tu as des valeurs numériques, remplace :
Ligne = Application.Match(Me.ComboBox1.Value, [BD!A:A], 0)
par :
Ligne = Application.Match(CInt(Me.ComboBox1.Value), [BD!A:A], 0)
Si tu mets le format des cellules à "texte", il faut le faire avant de remplir les cellules.
est-il possible de charger le texte dans le userform avec sa mise en forme (exemple certains mots en gras etc...)
Non.
est-il possible de modifier le contenu de la textbox et lors de l'appui sur un bouton, de transférer son contenu dans la cellule du classeur
Oui. ajoute le bouton et modifie le code associé au userform :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| Public Ligne As Integer
Private Sub ComboBox1_Change()
Ligne = Application.Match(CInt(Me.ComboBox1.Value), [BD!A:A], 0)
Me.TextBox1.Text = Application.Index([BD!B:B], Ligne)
End Sub
Private Sub CommandButton1_Click()
Sheets("BD").Cells(Ligne, 2).Value = Me.TextBox1.Text
End Sub
Private Sub UserForm_Activate()
With Sheets("BD")
Me.ComboBox1.RowSource = "BD!" & _
.Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp)).Address
End With
End Sub |
où-puis je trouver les options de mise en forme du userform, par exemple mettre une barre de défilement sur le coté pour les longs texte, mettre des onglets en haut etc...
Quand tu affiches le userform dans la fenêtre VB, clique sur le menu "Affichage" et sur "Boîte à outils".
Partager