Remplacer un mot d'une cellule par le contenu d'une autre cellule - Résolu

maxime111

XLDnaute Nouveau
Bonsoir à toutes et à tous et bonne année :)

J'ai un souci et j'espère pouvoir trouver une solution ici, je m'explique:
Dans le fichier ci-joint, pour chaques lignes, je souhaite remplacer le mot "Renault" qui se trouve dans les colonnes B et C par le contenu de la cellule A.
pour la ligne 2 il faudrait arriver à afficher dans les colonnes B et C:
<p>Véhicule:*voiture clio</p><p>longueur, largeur, ect.</p>
et
<p>Le <strong> moteur de la voiture clio est testé et dispose des normes de sécurité<span class="max-converted-space"></p>

Une idée? J'ai des milliers de références à faire donc à la main ce n'est pas possible...

Merci d'avance!

Longue vie à ce forum!
 

Pièces jointes

  • problème excel.xlsx
    9.5 KB · Affichages: 35
  • problème excel.xlsx
    9.5 KB · Affichages: 33
Dernière modification par un modérateur:

Paf

XLDnaute Barbatruc
Re : Remplacer un mot d'une cellule par le contenu d'une autre cellule

bonjour et bienvenue sur XLD,

Si les données commencent toutes en ligne 2 et qu'il y a autant de ligne en colonne A qu' en colonne B ou C, une macro basique:

Code:
Sub Remplace()
 Dim i As Long, ARemplacer As String
 ARemplacer = "Renault"     ' adapter le mot à remplacer
 With Worksheets("Feuil1")  ' adapter le nom de la feuille
 For i = 2 To .Range("B" & Rows.Count).End(xlUp).Row
    .Cells(i, 2) = Replace(.Cells(i, 2), ARemplacer, .Cells(i, 1))
    .Cells(i, 3) = Replace(.Cells(i, 3), ARemplacer, .Cells(i, 1))
 Next
 End With
End Sub

Si le traitement était trop long, il faudrait passer par des tableaux. A voir.
A+
 

CPk

XLDnaute Impliqué
Re : Remplacer un mot d'une cellule par le contenu d'une autre cellule

Bonjour, eventuellement à coller en B2 et à étirer à droite et en bas

=SI($A2<>"";SUBSTITUE(B$1;"Renault";$A2);"")

ou en variable tableau

Sub remplacer()
Dim c()
a = Feuil1.UsedRange
ReDim c(1 To UBound(a))
For d = 2 To 3
For b = 2 To UBound(a)
c(b - 1) = Replace(a(1, d), "Renault", a(b, 1), , , vbTextCompare)
Next b
Feuil1.Cells(2, d).Resize(UBound(c), 1) = Application.Transpose(c)
Next d
End Sub
 
Dernière modification par un modérateur:

maxime111

XLDnaute Nouveau
Re : Remplacer un mot d'une cellule par le contenu d'une autre cellule

Bonjour CPk et Paf,

Je tiens à vous remercier car vos 2 solutions fonctionnent parfaitement!

Aprés avoir passer mon weekend à m'arracher les cheveux pour résoudre ce problème, je peux enfin avancer!

Merciiiiii et bonne journée :)
 

Paf

XLDnaute Barbatruc
Re : Remplacer un mot d'une cellule par le contenu d'une autre cellule

re,

pour répondre au MP:

pour mettre en résolu, sous le tout premier message cliquer sur Modifier le message et rajouter Résolu dans le titre .

Bonne suite
 

Discussions similaires

Statistiques des forums

Discussions
312 195
Messages
2 086 083
Membres
103 115
dernier inscrit
fiachris26