Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Rechercher et remplacer

  • Initiateur de la discussion Initiateur de la discussion drareg78
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

drareg78

Guest
Bonjour à tous.

Je bute sur le Pb suivant. Dans un de mes Programmes, j'ai un tableau contenant bon nombre de cellules comportant, comme dans la formule suivante, le nombre 150 documenté de base mais devant être ensuite remplacé par un nombre, jamais le même, contenu dans une cellule que j'ai nommée "Ch_Rempl"

=SI(B7="";"";INDEX('1ere Partie'!$G$1:$G$150;SOMMEPROD(('1ere Partie'!$C$7:$E$150=B7)*LIGNE($B$7:$B$150))))

Comment rédiger la macro me permettant de remplacer 150 par le contenu de la cellule "Ch_Rempl".

L'utilisation de la fonction rechercher / Remplacer tout se solde systématiquement par un échec.

Par avance merci de votre aide
 
Re : Rechercher et remplacer

Bonjour,
pas sûr d'avoir tout compris, mais regarde ce code, effectue le remplacement dans la colonne A :
Code:
Columns(1).Replace 150, Range("Ch_Rempl"), xlWhole, , False

bonne journée
@+
 
Re : Rechercher et remplacer

Bonjour le fil 🙂,
Ne serait-ce pas plutôt
Code:
Columns(1).Replace What:="150", Replacement:=Range("Ch_Rempl"), LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
pour remplacer le 150 par 200 par exemple 😉 ?
Bonne journée 😎
 
Re : Rechercher et remplacer

Re, bonjour JNP

le code que j'ai donné fonctionne chez moi en l'état....
 
Re : Rechercher et remplacer

JPN et Pierrot 93, tout d'abord, merci de votre aide.

Le test convient effectivement quand on donne la valeur d'une cellule mais pas le nom qu'on lui a donné. Voici ce que j'avais écrit et qui fonctionne très bien avec "200", ou tout autre chiffre, mais qui ne fonctionne pas si, comme je le voudrai, ce chiffre de 200 (ou autre) est remplacé par le nom de la cellule qui le contient, en l'occurence "Ch_Rempl".

Cells.Replace What:="150", Replacement:="200", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Je tourne autour ce ça depuis plusieurs jours en ayant l'impression de ne pas être loin mais je n'y arrive pas

Merci encore
 
Re : Rechercher et remplacer

Re 🙂,
Peut-être ta zone nommée est-elle une formule 😉...
Code:
Range("Ch_Rempl").Text
Sinon, essaie de nous mettre un bout de fichier test 🙄...
Bon courage 😎
 
Re : Rechercher et remplacer

re,

Peut être ceci :
Code:
Columns(1).Replace 150, Range("Ch_Rempl").Name, xlPart, , False

ou cela :
Code:
Columns(1).Replace 150, Range("Ch_Rempl").Name.Name, xlPart, , False
 
Re : Rechercher et remplacer

JNP et PIERROT93 merci de votre aide.

Malheureusement cela ne fonctionne toujours pas. Il semblerait bien que le concept rechercher/remplacer ne tolère pas que le remplacement utilise le nom donné à la cellule contenant le nombre servant au dit remplacement.
Comme évoqué dans mon fil précédent, tout fonctionne si on saisi la valeur absolue de cette cellule ce qui ne peut satisfaire à ce que je veux faire, dans la mesure ou le contenu de la cellule "Ch_Rempl" n'a jamais la même valeur.

Voici en fait ce que je voudrai voir fonctionner mais j'ai beau écrire le nom de ma cellule "Ch_Rempl" sous toutes les formes possibles rien ne fonctionne. Si j'écris une valeur quelconque au lieu du nom de ma cellule, ça marche

Cells.Replace What:="150", Replacement:="Ch_Rempl", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Si vous avez d'autres idées je suis preneur.

Merci encore
 
Re : Rechercher et remplacer

Bonjour JPN, et merci sincèrement pour ta constance.

J'ai testé immédiatement ton petit fichier, et plusieurs fois, mais cela n'a jamais fonctionné car j'ai toujours reçu le message suivant "Erreur d'exécution '1004' suivi de "Erreur définie par l'application ou par l'objet".
Penses tu que le fait que je sois sur Excel 2000 et toi sur 2010 puisse être la cause de ce dysfonctionnement??
 
Re : Rechercher et remplacer

Re 🙂,
Penses tu que le fait que je sois sur Excel 2000 et toi sur 2010 puisse être la cause de ce dysfonctionnement??
C'est possible bien qu'étonnant 🙄...
Essaie dans mon fichier (attention à ce que le nom de fichier soit resté Replace.xls) ces MsgBox l'un après l'autre pour voir lesquels te renvoient 200 et lesquels te renvoient une erreur. Il s'agit de différentes syntaxes qui toutes me renvoient 200 sous 2010, à voir si elle fonctionnent sous 2000 😉...
Code:
MsgBox Evaluate("Ch_Rempl")
MsgBox Range("Ch_Rempl")
MsgBox Range("Ch_Rempl").Text
MsgBox Range("Replace.xls!Ch_Rempl")
MsgBox Range("[Replace.xls]Feuil1!Ch_Rempl")
Si tu en as une qui renvoie correctement 200, elle devrait fonctionner dans le Replace 🙄...
Bon courage 😎
 
Re : Rechercher et remplacer

JPN et Pierrejean, merci à tous les deux.

La macro de pierrejean a fonctionné tout de suite et diffère de la notre par la suppression des deux dernières instructions
SearchFormat:=False, ReplaceFormat:=False
Pierrejean serait ce trop demandé d'expliquer pourquoi la présence de ces instructions pouvait faire que chez moi cela ne fonctionnait jamais?

En tous cas merci encore de votre aide, j'aimerai sincèrement être capable un jour de vous rendre la pareille. A bientôt
 
Re : Rechercher et remplacer

Re 🙂,
D'autant plus étonnant que dans ton #7, tu disais Te serais-tu trompé dans ce post ? J'avais vérifié que les critères de mon code étaient alignés dessus 🙄...
Enfin, le principal est que ça fonctionne enfin 😉 !
Bonne suite 😎
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

N
Réponses
9
Affichages
901
nicopat
N
R
Réponses
2
Affichages
707
Rincevent29
R
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…