Manipulation de caractères

Bonjour à tous est par avance merci pour l'aide que vous allez m'apporter.

Dans la fonction "Replace" je veux supprimer une chaine de caractères exemple:

Replace(Cells(i,j).Value = Replace(Cells(i,j).value, "dotexteben", "")

Problème dans "dotexteben", texte correspond à une chaine de caractère variable. J'ai essayé de mettre "*" ("do*ben") et même (do%ben), à la place de "texte", qui devrait remplacer plusieurs caractères mais cela ne fonctionne pas.

Y-a-t-il une solution? et si oui laquelle?

Avec mes remerciements

paterbleutch

bonsoir paterbleutch,

avez-vous un fichier avec quelques exemples pour voir ce que vous voulez ? Donc source et résultat

Bonsoir,

un essai de syntaxe :
Cells(i,j).Value = Replace(Cells(i,j).value, "do" & VariableText & "ben", "")

VariableText est une variable avec le texte voulu. Après regardez un peu la syntaxe finale de l'instruction par rapport à la votre.
La valeur de la cellule "i,j" est égale à sa valeur dont on remplace do & le texte variable et ben, par un double guillemet donc rien.

@ bientôt

LouReeD

Bonsoir Paterbleutch, le Fil,

Si c'est pour remplacer dans une boucle x, y

Alors utilise une condition:

If left(Cells(x,y),2) = "do" and right(cells(x,y), 3) = "ben" and len(cells(x, y) >5 then Cells(1,5)=""

bonjour le fil,

une autre méthode

Sub test()
     s1 = "do": s2 = "ben"
     For Each c In Range("A1:D20").Cells
          s = c.Value2
          i1 = InStr(1, s, s1, 1)            'trouver chaîne "DO" ou "do" ou "Do" ou "dO"
          If i1 > 0 Then                     'trouvé !!!
               'méthode 1
               i2 = InStr(i1 + 1, s, s2, 1)     'trouver le premier "ben" (+variantes) après le"DO"
               'méthode 2
               i3 = InStrRev(s, s2, , 1)     'trouver le dernier "ben" (même avant ce "do")
               'dépendant de la méthode, on prend i2 ou i3
               If i3 > i1 Then c.Value = Left(s, i1 - 1) & Mid(s, i3 + Len(s2))
          End If
     Next
End Sub
Rechercher des sujets similaires à "manipulation caracteres"