Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008
-
29 août 2007 à 16:28
Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008
-
30 août 2007 à 11:16
Bonjour à tous,
Je voudrais savoir si il était possible de créer une variable (en integer) qui donnne le nombre de lignes présentes dans une RichTextBox.
Merci d'avance.
Kristof_Koder
Messages postés918Date d'inscriptionvendredi 3 août 2007StatutMembreDernière intervention27 octobre 200810 30 août 2007 à 09:47
welcometomyheaven < Ne aps déclarer une variable !!! Drôle de conseil !!!
IL FAUT TOUJOURS DECLARER SES VARIABLES ! VB permet de ne pas el faire mais cela ne devrait pas exister !! C'est une abbération !!! "OPTION EXPLICIT" doit toujours être à ON !! En fait, cette option ne devrait même pas exister tout court !
Marneus73 < Ton code avec le ubound sur le split était presque bon. Sauf qu'il faut faire le split() sur vbLf uniquement ! le RichTextBox n'emploie pas le CRLF pour passer à la ligne.
Il faudra aussi penser à ajouter 1 au résultat de UBOund() car l'indice est à base zéro.
Kristof_Koder
Messages postés918Date d'inscriptionvendredi 3 août 2007StatutMembreDernière intervention27 octobre 200810 30 août 2007 à 10:46
LF = Line Feed = Saut de ligne (code ascii 10)
CR Carriage Return Retour chariot (code ascii 13)
Sous Windows, un changement de ligne est normalement fait avec deux caractères : un CR + un LF, d'ou l'existance de la constante vbCRLF. En fait :
vbCRLF = vbCR & vbLF, tout simplement
welcometomyheaven
Messages postés24Date d'inscriptiondimanche 11 juin 2006StatutMembreDernière intervention 8 août 2008 29 août 2007 à 18:34
bonjour
voila la réponse
copie ce code et ça va marché
Public Function NTotal(RichTextBoxLigne As String)
Dim numLines, Texte
numLines = 1
Texte = RichTextBoxLigne
Do
Apostrophe = InStr(Texte, vbCrLf)
If Apostrophe <> 0 Then
numLines = numLines + 1
Texte = Mid(Texte, Apostrophe + 1, Len(Texte) - Apostrophe)
Else
Exit Do
End If
Loop
NTotal = numLines
End Function
Private Sub Command1_Click()
MsgBox NTotal(Text1.Text)
End Sub
welcometomyheaven
Messages postés24Date d'inscriptiondimanche 11 juin 2006StatutMembreDernière intervention 8 août 2008 29 août 2007 à 19:02
bonjour
est ce ke t'as copier le code comme il est?
et pour "Apostrophe" tu peu la changer avec ce que tu veu comme variable ex: X ou Y
et il ne fau pas la declarer
n'oublie pas d'ajouter une textbox un et buton de commande et ne change pas leur nom
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 29 août 2007 à 20:51
Salut,
Mon premier poste est issue d'une recherche avec le moteur de recherche du site sur le forum, et il se peut qu'il te fasse adapter le code proposer en .net(je n'en sais rien, mais toi seul le sait)...
Utilise le moteur, tu y trouvera une mutlitude de topics sur le RichTextBox...
Et la solution de welcometomyheaven ne te convient pas ? Il se peut qu'il faut que tu retouches le code proposer en VB6 vers .Net
Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008 30 août 2007 à 09:08
Re Bonjour.
Voila pourquoi rien ne marche chez moi, je suis en VB.Net !J'ai fait une recherche sur le site, et je ne trouve que deux discussions: celle d'Exploreur et une autre où ils donnent des codes astronomiques. J'ai aussi essayé sur l'aide du logiciel mais là aussi rien. Le seul truc qu'il me propose de compter ce sont les lignes d'une table (Visual Database Tools). Je vais tenter ma chance sur google...<!---->
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 20137 30 août 2007 à 09:15
salut,
J'ai recherché et testé le code qui était mentionné aussi en vb.net dans le lien que 17710 Exploreur avait donné.
Avec MessageBox.Show(UBound(Split(RichTextBox1.Text, vbCRLf)))
j'obtiens 0.
vbcr = chr$(13) ' retour chariot
vblf = chr$(10) ' retour ligne
vbcrlf = chr$(13)+chr$(10)
J'ai essayé avec vbLf et là j'obtiens 3 alors que j'ai 4 lignes dans le richtextbox.