Comment utiliser la fonction REMPLACER d'excel en macro

MarioC83 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

J'ai besoin d'utiliser la fonction REMPLACER en macro.

Par exemple, je souhaite remplacer une partie de plusieurs cellules de la ligne #1 par le contenue de la cellule A1 aussitôt que que j'écris dans la cellule A1

Par exemple, si j'écris en A1

Cellule A1 : 123456

Je souhaite remplacer une partie du contenu des autres cellules de la ligne 1 (cellules C1, D1, E1, F1 et G1); «NoContrat» remplacer par le contenu de A1 «123456» dans les formule suivante :

Cellule C1 : =@SI(ESTVIDE(B1);" ";INDEX('C:\Users\Utilisateur\Desktop\[NoContrat.xls]NoContrat'!$A$4:$Q$486;B1;2)) 

Cellule D1 : =@SI(ESTVIDE(B1);" ";INDEX('C:\Users\Utilisateur\Desktop\[NoContrat.xls]NoContrat'!$A$4:$Q$486;B1;3))

Cellule E1 : =@SI(ESTVIDE(B1);" ";INDEX('C:\Users\Utilisateur\Desktop\[NoContrat.xls]NoContrat'!$A$4:$Q$486;B1;4))

Cellule F1 : =@SI(ESTVIDE(B1);" ";INDEX('C:\Users\Utilisateur\Desktop\[NoContrat.xls]NoContrat'!$A$4:$Q$486;B1;5))

Cellule G1 : =@SI(ESTVIDE(B1);" ";INDEX('C:\Users\Utilisateur\Desktop\[NoContrat.xls]NoContrat'!$A$4:$Q$486;B1;6))

Ces cellules renvoient des données qui se trouvent dans un autre classeur excel.

Le classeur source change fréquemment et c'est pour cette raison que je souhaite une macro en exécution automatique dès que j'écris dans la colonne A.

Pouvez-vous m'aider svp ?

Merci à l'avance ! 

A voir également:

2 réponses

MarioC83 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

J'ai trouvé ce code mais il analyse toutes les cellules de ma feuilles.   J'aimerais limiter la rechercher et le remplacement à la plage C1:G1... comment faire ?

Sub FindandReplaceText()
'Update by Extendoffice 2018/5/24
    Dim xFind As String
    Dim xRep As String
    Dim xRg As Range
    On Error Resume Next
    Set xRg = Cells
    xFind = Application.InputBox("word to search:", "Kutools for Excel", , , , , 2)
    xRep = Application.InputBox("word to replace:", "Kutools for Excel", , , , , 2)
    If xFind = "False" Or xRep = "False" Then Exit Sub
    xRg.Replace xFind, xRep, xlPart, xlByRows, False, False, False, False
End Sub

0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 714
 

Bonjour,

Sub FindandReplaceText()
'Update by Extendoffice 2018/5/24
    Dim xFind As String
    Dim xRep As String
    Dim xRg As Range
    On Error Resume Next
    Set xRg = Range("C1:G1")
    xFind = Application.InputBox("word to search:", "Kutools for Excel", , , , , 2)
    xRep = Application.InputBox("word to replace:", "Kutools for Excel", , , , , 2)
    If xFind = "False" Or xRep = "False" Then Exit Sub
    xRg.Replace xFind, xRep, xlPart, xlByRows, False, False, False, False
End Sub
0