Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

RUTOSI

XLDnaute Nouveau
Bonjour,

J'ai un petit problème concernant la fonction RECHERCHER - REMPLACER PAR.

En fait je voudrais faire un RECHERCHER (d'un mot dans une cellule (A8) qui comporte une formule)

Et le REMPLACER PAR (un autre mot dans cette même cellule).

Le problème c'est que je voudrais faire cela sur une plage de cellule (de A8 à A256) et non pas sur toute la colonne (REMPLACER TOUT) ou en faisant REMPLACER pour chaque cellule.

Je voudrais faire cela en automatique. Donc, passer par VBA.

Et là je bloque dans le processus de création de cette macro.

J'espère avoir été clair dans mon explication.

Je vous souhaite une bonne journée et merci d'avance pour vos réponses.
 

jojo3008

XLDnaute Junior
Re : Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

jsui pas sur d avoir compris exactement c quoi le soucis mais tiens essaye :
Code:
sub rechercher_remplacer()
'recherche et remplace X par Y dans "Sheet1"
dim i as integer
For i=8 to 256
          If worksheets("Sheet1").cells(i,1).value = X Then 
          worksheets("Sheet1").cells(i,1).value = Y
          End If
Next i
End sub
 

RUTOSI

XLDnaute Nouveau
Re : Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

jsui pas sur d avoir compris exactement c quoi le soucis mais tiens essaye :
Code:
sub rechercher_remplacer()
'recherche et remplace X par Y dans "Sheet1"
dim i as integer
For i=8 to 256
          If worksheets("Sheet1").cells(i,1).value = X Then 
          worksheets("Sheet1").cells(i,1).value = Y
          End If
Next i
End sub


J'ai essayé cette macro mais elle ne marche pas.
 

JNP

XLDnaute Barbatruc
Re : Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

Bonjour le fil :)
J'ai un petit problème concernant la fonction RECHERCHER - REMPLACER PAR.
En fait je voudrais faire un RECHERCHER (d'un mot dans une cellule (A8) qui comporte une formule)
Et le REMPLACER PAR (un autre mot dans cette même cellule).
Le problème c'est que je voudrais faire cela sur une plage de cellule (de A8 à A256) et non pas sur toute la colonne (REMPLACER TOUT) ou en faisant REMPLACER pour chaque cellule.
Si tu sélectionnes tes cellules A8 à A256 avant de faire le remplacer, tu ne remplaceras que dans les cellules sélectionnées ;).
Je voudrais faire cela en automatique. Donc, passer par VBA.
Et là je bloque dans le processus de création de cette macro.
Sinon, par macro
Code:
Range("A8:A256").Replace What:="Mon mot", Replacement:="Mon autre mot", LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False
Bonne journée :cool:
 

xavier-c

XLDnaute Nouveau
Re : Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

Bonjour,
Moi, j'utilise :
Selection.Replace Text = "tis", Replacement:="Tisserand", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Ma question est que si dans ma sélection il trouve: tisserand comme il reconnait la chaine tis il me la remplace par tis par tisserand, résultat : tisserandserand !
Comme faire pour lui indiquer de rechercher une chaine de caractère "limité" ?
Vous remerciant
Xavier
 

Pierrot93

XLDnaute Barbatruc
Re : Faire un RECHERCHER - REMPLACER en VBA sur une plage de données

Bonjour à tous,

modifie l'argument "LookAt" :

Code:
Selection.Replace Text = "tis", Replacement:="Tisserand", LookAt:=[COLOR="Red"][B]xlWhole[/B][/COLOR], SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Bon après midi
@+
 

Discussions similaires

Réponses
26
Affichages
386

Statistiques des forums

Discussions
312 248
Messages
2 086 593
Membres
103 248
dernier inscrit
Happycat