All pastes #89289 Raw Edit

Stuff

public text v1 · immutable
#89289 ·published 2006-07-16 02:00 UTC
rendered paste body
' Texte = texte où rechercher l'expression à remplacer.
' TexteRecherché = expression à remplacer.
' NouveauTexte = expression de remplacement.
' Départ = numéro de caractère du début de la recherche, commençant à 1.
 
Public Function Remplacer(ByVal Texte As String, ByVal TexteRecherché As String, _
ByVal NouveauTexte As String, Optional ByVal Départ As Integer = 1) As String
  Dim strTemp1 As String, strTemp2 As String
  Dim I As Integer
  On Error GoTo RemplacerErr
  strTemp1 = Texte
  I = InStr(Départ, strTemp1, TexteRecherché)
  Do Until I = 0
    strTemp2 = Left(strTemp1, I - 1) & NouveauTexte _
    & Right(Texte, Len(strTemp1) - I - Len(TexteRecherché) + 1)
    strTemp1 = strTemp2
    I = InStr(I + 1, strTemp1, TexteRecherché)
  Loop
  Remplacer = strTemp1
  Exit Function
RemplacerErr:
  ' Gestion d'erreur simplissime, il ne peut pas se passer grand-chose
  ' sauf si Départ est inférieur à 1
  Select Case Err.Number
  Case Else
    Err.Raise Number:=vbObjectError + 1000, _
    Description:="Erreur dans la fonction Remplacer : " & vbCrLf & Err.Description
  End Select
End Function