Je souhaite savoir s'il existe une formule afin de remplacer les occurence d'un mot par un autre sur une ligne exemple :
L1 ancien cartable cartable 2 ancien voiture ancien velo
L2 ancien cartable trousse ancien voiture ancien velo
L3 ancien cartable cuillere ancien voiture ancien velo
dans cet exemple je souhaite remplacer dans toute la ligne L1 le mot "ANCIEN" par "Cartable 2", et remplacer sur tout la ligne 2 le mot "ANCIEN" par le mot "Trousse" et remplacer dans la ligne 3 le mot Ancien par "Cuillere"
chose simple a faire lorsqu'on remplace que une ligne mais lorsque je dois le faire pour 50 ligne à la fois, là les choses se corsent.
Re : Remplacer un mot dans plusieurs cellules d'une ligne
Bonjour,
sur la pièce jointe toutes les lignes sont identiques sauf les valeurs de la colonne c :
ce qu'il y a a faire est :
exemple 1 : sur la ligne 2 remplacer toutes les occurence "5320s" par la valeur correspondante de la colonne C ici "Microline 100"
exemple 2 : sur la ligne 2 remplacer toutes les occurences "5320s" par "Microline 172" etc.
exemple 3 : sur la ligne 3 remplacer toutes les occurences "5320s" par "Microline 180" etc.
Re : Remplacer un mot dans plusieurs cellules d'une ligne
Re,
Bon ce n'est pas ce que je croyais, alors exécuter cette macro (Alt+F11) :
Code:
Sub Remplacer()
Dim t As String, cel As Range
t = "5320S" 'texte à remplacer
Application.ScreenUpdating = False
For Each cel In Range("B2", [B65536].End(xlUp))
cel = Replace(cel, t, cel.Offset(, 1))
Next
End Sub
Fichier joint.
Nota : s'il y avait énormément de lignes on pourrait utiliser une méthode plus rapide (un tableau VBA).
Re : Remplacer un mot dans plusieurs cellules d'une ligne
Re,
Hum, je n'avais pas été regarder toutes les colonnes...
Code:
Sub Remplacer()
Dim t As String, cel As Range
t = "5320S" 'texte à remplacer
Application.ScreenUpdating = False
For Each cel In Range("C2", [C65536].End(xlUp))
If cel <> "" Then cel.EntireRow.Replace t, cel, xlPart
Next
End Sub
Fichier (2).
Si vous ne voulez pas qu'on touche à "E5320S" dites-le.