Comment utiliser la fonction REMPLACER d'excel en macro

Fermé
MarioC83 Messages postés 13 Date d'inscription mardi 19 novembre 2019 Statut Membre Dernière intervention 12 mars 2023 - 12 mars 2023 à 01:18
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 - 12 mars 2023 à 09:20

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 mardi 19 novembre 2019 Statut Membre Dernière intervention 12 mars 2023
12 mars 2023 à 05:28

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 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
12 mars 2023 à 09:20

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