Remplacement d'une partie d'une chaine de caractère

Bonjour à tous.

J'ai réussi à résoudre une partie de mon problème mais la seconde me pose problème.

Le problème :

J'ai une table de transcodification qui me permet de modifier le nom d'anciens sites en nouveaux sites. Ce problème j'ai réussi à le résoudre avec le code suivant :

Function taille1()

For i = 1 To 10000

If Worksheets(1).Cells(i, 1) = "" Then

taille1 = i - 1

i = 10000

End If

Next

End Function

Function taille2()

For i = 1 To 10000

If Worksheets(2).Cells(i, 1) = "" Then

taille2 = i - 1

i = 10000

End If

Next

End Function

Sub osef()

Dim var1 As String

For i = 1 To taille1

var1 = Worksheets(1).Cells(i, 1)

For j = 1 To taille2

If Worksheets(2).Cells(j, 1) = var1 Then

Worksheets(1).Cells(i, 2) = Worksheets(2).Cells(j, 2)

j = taille2

Else

Worksheets(1).Cells(i, 2) = var1

End If

Next

Next

End Sub

Le problème est que maintenant j'ai des articles avec le nom de l'ancien site en préfixe. Dans le cas où le site change suite à la première solution, j'ai besoin que le site soit changé dans le préfixe de l'article en utilisant la même méthode. C'est juste un changement de chaine de caractère.

L'exemple est dans la feuille 3 de l'excel en PJ.

Dans l'attente de votre retour.

Julien

Bonjour,

pour ton exemple, une solution via une formule à mettre en D2

=SUBSTITUE(A2;B2;C2)

sinon en VBA

cells(2,4)=replace(cells(2,1),cells(2,2),cells(2,3))
Rechercher des sujets similaires à "remplacement partie chaine caractere"