0/5 (1 avis)
Vue 9 140 fois - Téléchargée 585 fois
'REMPLACEMENT DU MOT PAR LA FONCTION REPLACE Private Sub Command1_Click() res = vbNullString txt = Text1.Text mot = Text2.Text 'Remplace toutes les occurences du mot recherché... 'C'est ici qu'on voit les dégats lorsque le mot recherché est aussi une syllabe res = Replace(txt, mot, " ") Text3.Text = res If res = vbNullString _ Then MsgBox "Cette phrase ne contient pas ce mot !", vbCritical, "Mot introuvable" End Sub 'REMPLACEMENT DU MOT PAR UN AUTRE MOYEN QUE REPLACE Private Sub Command2_Click() res = vbNullString txt = Text1.Text 'Pour permettre la rechercher sur l'ensemble du texte... txt = Replace(txt, vbCrLf, " ¡ ") 'Alt+173 = point d'exclamation à l'envers txt = Replace(txt, vbCr, " ¿ ") 'Alt+168 = point d'interrogation à l'envers 'Dans le texte, il n'y en a pas... mot = Text2.Text Dim MyTab() As String 'Découpe le texte en morceau ; chaque morceau correspondant à un mot 'Si les constantes vbCr et vbCrLf n'avaient pas été remplacées, la découpe ne 'se serait pas faite correctement... MyTab = Split(txt, " ") 'Pour chacun des mots du texte... For i = 0 To UBound(MyTab) 'Si le mot en minuscule est différent du mot recherché (en minuscule)... If LCase(MyTab(i)) <> LCase(mot) Then '...alors conserve ce mot et l'ajoute à la chaine "res" res = res & MyTab(i) & " " End If Next i 'Remet les vbCr et vbCrLf afin de retrouver le texte avec ses paragraphes... res = Replace(res, " ¡ ", vbCrLf) res = Replace(res, " ¿ ", vbCr) Text3.Text = res If res = vbNullString _ Then MsgBox "Cette phrase ne contient pas ce mot !", vbCritical, "Mot introuvable" End Sub Private Sub Form_Load() Dim Texte1 As String Texte1 = "C'est sur la route du village que Danielle a rencontré son ami Jean." Texte1 = Texte1 & vbCrLf & "Elle ne l'avait plus vus depuis la semaine dernière." Texte1 = Texte1 & vbCrLf & "Celui-ci venait d'aller chercher son poisson à la pêcherie." Texte1 = Texte1 & vbCrLf & vbCrLf & "Je ne vous dirais pas la suite car cette histoire est personnelle." Me.Text1.Text = Texte1 Me.Text2.Text = "son" Me.Text2.SelStart = 0 Me.Text2.SelLength = Len(Me.Text2.Text) Me.Label4.FontSize = 12 Me.Label4.FontBold = True Me.Label4.Caption = "Faites également le test avec 'elle', 'la'" End Sub
8 nov. 2002 à 12:54
J'ai une solution simplissime pour remplacer un mot et pas une syllabe
MaNouvelleChaine = Replace (MonAncienneChaine, " " & TexteAvant & " ", " " & TexteApres & " ")
En gros, tu remplace une chaine de caractère que tu répète avec la chaine de remplacement.
Tu fais pareil pour remplacer en début ou en fin de fin en préfixant ou en suffixant avec " ".
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.