Euh, je peux avoir des définitions de plusieurs lignes d'où l'intérêt d'avoir la possibilité d'agrandir la Texteboxbonjour
après avoir regarder ton userform ta demande n'est pas très claire
Private Sub TextBox3_Change()
With TextBox3
t = .Value
If Len(t) > 40 And Len(t) Mod 45 = 0 Then
t = t & vbCrLf: nbligne = UBound(Split(t, vbCrLf)): .Height = 38 + (15 * nbligne): .Value = t
For Each ctrl In Me.Controls
If ctrl.Top > .Top + .Height Then ctrl.Top = ctrl.Top + 15
Next
Me.Height = Me.Height + 15
End If
End With
End Sub
bon voila mais c'est pas très pratique pour le reste de l'userform
je limite à 45 caractères par ligne (tout les 45 un saut de ligne auto) et un redimensionnement du tbx et repositionnement des controls qui sont en dessous
VB:Private Sub TextBox3_Change() With TextBox3 t = .Value If Len(t) > 40 And Len(t) Mod 45 = 0 Then t = t & vbCrLf: nbligne = UBound(Split(t, vbCrLf)): .Height = 38 + (15 * nbligne): .Value = t For Each ctrl In Me.Controls If ctrl.Top > .Top + .Height Then ctrl.Top = ctrl.Top + 15 Next Me.Height = Me.Height + 15 End If End With End Sub
mais si je puis me permettre j'aurais fait plus simple
Je pensais qu'il était possible que la TextBox s'agrandisse automatiquement afin que tout le texte soit disponible en même temps.
La vocation d'une textbox est l'édition. Ces "enfants" devront-ils y saisir/modifier ? Si non, se contenter d'un label qui, lui, est doté d'une propriété ad hoc (autosize)il n'est pas évident pour des enfants de de naviguer dans cette TextBox
Non simplement consulter tel un ditionnaireBonjour
La vocation d'une textbox est l'édition. Ces "enfants" devront-ils y saisir/modifier ? Si non, se contenter d'un label qui, lui, est doté d'une propriété ad hoc (autosize)
Utilise alors un label (me relire)Non simplement consulter tel un ditionnaire