Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 supprimer la dernière ligne d'une textbox

youguybass

XLDnaute Junior
Bonjour
Dans une textbox (multiligne) je voudrais supprimer la dernière ligne.

j'ai essayé de compter le nb de lignes avec une variable "Del"
Del=textbox1.LineCount → cela ne marche pas

est ce que quelqu'un aurait une solution?

D'avance merci
 
Solution
Bonjour et merci du temps passé
Je n'ai pas de double caractère vbCrLf
La solution de P56 marche sur mon fichier ou j'avais la dernière ligne de ma tbx qui était vide
j'ai juste remplacé
Me.TextBox5.Value = Left(S, Len(S) - 1) par Me.TextBox5.Value = Left(S, Len(S) - 2)
et cela fonctionne
Bonne journée

p56

XLDnaute Occasionnel
Bonjour,
Un textbox multilignes contient des retours chariots (vbcrlf), il suffit de spliter pour distinguer chaque lignes.
Pour gommer la dernière ligne d'un textbox5 on peut écrire un truc du genre :
VB:
Dim T As Variant, S As String, i As Byte
    
    T = Split(Me.TextBox5.Value, vbCrLf)
    For i = 0 To UBound(T) - 1
        S = S & T(i) & vbCrLf
    Next i
    Me.TextBox5.Value = Left(S, Len(S) - 1)
P.
 

job75

XLDnaute Barbatruc
Bonjour youguybass, p56, le forum,

Si les lignes de TextBox1 sont toutes séparées par le double caractère vbCrLf exécutez :
VB:
Dim n%
n = InStrRev(TextBox1, vbCr)
If n Then TextBox1 = Left(TextBox1, n - 1)
Sinon je ne vois pas de solution.

A+
 

youguybass

XLDnaute Junior
Bonjour et merci du temps passé
Je n'ai pas de double caractère vbCrLf
La solution de P56 marche sur mon fichier ou j'avais la dernière ligne de ma tbx qui était vide
j'ai juste remplacé
Me.TextBox5.Value = Left(S, Len(S) - 1) par Me.TextBox5.Value = Left(S, Len(S) - 2)
et cela fonctionne
Bonne journée
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…