OVH Cloud OVH Cloud

TextBox avec plusieurs lignes

2 réponses
Avatar
Patrick Fredin
Bonjour,

Dans un UserForm, j'ai mis un TextBox avec la propriété MultiLine à True.

Y a-t-il un moyen de connaître sur quelle ligne est le curseur ?
Le truc, c'est que je rajoute du texte automatiquement à l'endroit où se
trouve le curseur. Mais apparemment, quand il y a plusieurs lignes, les
caractères de retour à la ligne sont comptés pour 2 (Chr(10) + Chr(13)). Du
coup, le texte n'est pas ajouté au bon endroit. Donc, si je savais à quelle
ligne est le curseur, je compterais 1 caractère de plus par ligne.

J'espère que vous m'avez compris.

Merci pour votre aide.

--
Patrick

2 réponses

Avatar
Youky
Fait des tests car je n'ai pas tout vu
Youky
If Len(TextBox1.Text) > 0 Then tt = 1
For k = 1 To Len(TextBox1.Text)
If Mid(TextBox1.Text, k, 1) = Chr(10) Then tt = tt + 1
Next
MsgBox tt & " lignes"

"Patrick Fredin" a écrit dans le message
de news:
Bonjour,

Dans un UserForm, j'ai mis un TextBox avec la propriété MultiLine à True.

Y a-t-il un moyen de connaître sur quelle ligne est le curseur ?
Le truc, c'est que je rajoute du texte automatiquement à l'endroit où se
trouve le curseur. Mais apparemment, quand il y a plusieurs lignes, les
caractères de retour à la ligne sont comptés pour 2 (Chr(10) + Chr(13)).
Du
coup, le texte n'est pas ajouté au bon endroit. Donc, si je savais à
quelle
ligne est le curseur, je compterais 1 caractère de plus par ligne.

J'espère que vous m'avez compris.

Merci pour votre aide.

--
Patrick


Avatar
Patrick Fredin
Merci pour l'idée. Je vais la tester.

--
Patrick


"Youky" wrote:

Fait des tests car je n'ai pas tout vu
Youky
If Len(TextBox1.Text) > 0 Then tt = 1
For k = 1 To Len(TextBox1.Text)
If Mid(TextBox1.Text, k, 1) = Chr(10) Then tt = tt + 1
Next
MsgBox tt & " lignes"

"Patrick Fredin" a écrit dans le message
de news:
Bonjour,

Dans un UserForm, j'ai mis un TextBox avec la propriété MultiLine à True.

Y a-t-il un moyen de connaître sur quelle ligne est le curseur ?
Le truc, c'est que je rajoute du texte automatiquement à l'endroit où se
trouve le curseur. Mais apparemment, quand il y a plusieurs lignes, les
caractères de retour à la ligne sont comptés pour 2 (Chr(10) + Chr(13)).
Du
coup, le texte n'est pas ajouté au bon endroit. Donc, si je savais à
quelle
ligne est le curseur, je compterais 1 caractère de plus par ligne.

J'espère que vous m'avez compris.

Merci pour votre aide.

--
Patrick