écrire ligne précise textbox

maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010 - 10 déc. 2007 à 21:00
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 11 déc. 2007 à 14:44
Bonjour,
J'aimerais savoir comment faire pour écrire à une ligne précise dans un textbox je m'explique : j'ai un textbox avec comme contenu :

ligne1
ligne2
ligne3
ligne4
ligne5
ligne6

comment faire pour écrire "TEST" à la ligne3 ? ce qui donnerait :

ligne1

ligne2

ligne3 TEST

ligne4

ligne5

ligne6

d'avance merci :)

123

12 réponses

fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
10 déc. 2007 à 21:03
REPLACE(TEXTBOX.text,"ligne3", "ligne3" & "test")
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
10 déc. 2007 à 21:13
c'est une bonne solution fsltp mais le problème c'est que je n'ai pas précisé que le contenu de la textbox change à chaque fois :s

123
0
fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
10 déc. 2007 à 21:18
C toujours la ligne 3 que tu veux changer ?
sur quels criteres tu veux faire des changements ?
+ precis svp ...
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
10 déc. 2007 à 21:23
alors c'est toujours la ligne 3 oui et il n'y à aucun critère il faut juste detecter la ligne 3 dans une textbox et alors rajouter à côté de cette ligne "TEST"

123
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
10 déc. 2007 à 21:30
faut trouver la position du 2eme vbcrlf
avec instr()
puis faire un replace(mid(textbox,position,lg),...)
a creuser
0
fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
10 déc. 2007 à 21:32
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
10 déc. 2007 à 21:37
haaa ok pas bête merci je vais voir ce que je peux faire si d'autres membres ont d'autres techniques n'hésitez pas

123
0
fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
10 déc. 2007 à 21:40
trouver ligne3

a toi de jouer pour la suite

Dim pos1 As Integer
Dim pos2 As Integer
Dim pos3 As Integer

pos1 = InStr(1, Text1.Text, vbCrLf)
pos2 = InStr(pos1 + 1, Text1.Text, vbCrLf)
pos3 = InStr(pos2 + 1, Text1.Text, vbCrLf)
MsgBox Mid(Text1.Text, pos2, pos3 - pos2)
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
10 déc. 2007 à 21:45
     Text1.Text = Replace(Text1.Text, Mid(Text1.Text, pos2, pos3 - pos2), Mid(Text1.Text, pos2, pos3 - pos2) & vbCrLf & Now)
   
merci ;)

123
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
10 déc. 2007 à 21:47
et juste par hasard c'est possible de faire la même chose MAIS pas la ligne 3 genre que la ligne à modifier change tout le temps ?

123
0
fsltp Messages postés 94 Date d'inscription lundi 26 novembre 2007 Statut Membre Dernière intervention 16 janvier 2008
11 déc. 2007 à 07:26
je pense que oui mais il faut faire une boucle de 1 à n ou n est la ligne à modifier.
recu dans une tablo de pos(1 à n) au lieu d'avoir pos1 pos2 pos3
...
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
11 déc. 2007 à 14:44
pas la plus optimisée, mais a le mérite d'être simple a comprendre :

Dim xsLines() As String
'# On découpe les lignes
xsLines = Split( Text1.text, VbNewLine)
'# On modifie la ligne 3
xsLines(2) = "Nouvellle ligne 3 (commence à 0)"
'# On replace le tout dans le textBox
Text1.Text = Join(xsLines, vbNewLine)
0
Rejoignez-nous