Rechercher et remplacer avec variable

guigouille -  
 LACOSTE JCl -
Bonjour,
J essaye de réaliser une macro qui recherche dans des cellules un path et le remplace par un autre....

voici mon code

Sub macro()

Dim sName As String
Dim sAncienNom As String

sAncienNom = Range("Ancient").Value

Select Case Range("utilisateur").Value
Case "Guillaume"
sName = "'D:\CC\GuillaumeTests\Test\code"
Case "Jean-Philipe"
sName = "'D:\CC\Jean-PhilipeTests\Test\code"
End Select

Range("E9:W30").Select
ActiveCell.Replace What:="& sAncienNom &", Replacement:= _
"& sName &", LookAt:=xlPart, SearchOrder:= _
xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Cells.Find(What:="& sAncienNom &", After:=ActiveCell, _
LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate

End Sub

seulement la macro ne fonctionne pas et je n'ai aucune idée pkoi!!
J'ai tout essayé alors si quelqu un a une idée...
Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

1 réponse

  1. LACOSTE JCl
     
    Pour ton information, utilise ce VB qui fonctionne super bien :

    Function RemplacerChaine(Chaine As String, Remplace As String, Nouveau As String)

    On Error Resume Next

    Dim X As Integer, Y As Integer
    Dim Resultat As String
    Dim ChainePrec

    Y = Len(Remplace)
    Resultat = ""

    If Not IsNull(Resultat) Then
    While Len(Chaine) > 0
    X = InStr(Chaine, Remplace)
    If X > 0 Then
    ChainePrec = Mid(Chaine, 1, X - 1)
    Chaine = Mid(Chaine, X + Y)
    Resultat = Resultat & ChainePrec & Nouveau
    Else
    Resultat = Resultat & Chaine
    Chaine = ""
    End If
    Wend
    RemplacerChaine = Resultat
    End If

    End Function
    0