Remplacement de texte

Bonjour a tous,

J'ai un tableau avec différents matériels (transformateurs, relais, etc...) et chacun de ces éléments à différents statuts (Delivery, fat, manufacturing, etc...).

J'ai une colonne avec les noms des matériels (la A), et une autre (la H) avec ces statuts. Mon soucis, c'est que les statuts ont des petites différences de nom (Delivery Site 1, Delivery xxx, Delivery Supplier) et que je voudrais effacer les caractères en trop pour ne garder que "Delivery", par exemple.

Le but est de nettoyer les données pour les trier ensuite.

Pour le moment, je suis parti sur une macro trouvé sur le net, mais comme mes connaissances en vba sont très très limitées, je ne comprends pas trop pourquoi ça ne fonctionne pas.

L'idée est de vérifier si la cellule en A2 (qui contient le nom du materiel) est non vide. et si c'est le cas, de vérifier si elle contient DELIVERY (seul ou avec d'autres termes) et ensuite de remplacer le contenue de la cellule en question par DELIVERY.

Sub Delivery()

'

' Delivery Macro

'

'

Range("A2").Activate

Do While ActiveCell.Value <> ""

If ActiveCell.Offset(0, 8).Value Like "DELIVERY*" Then ActiveCell.Offset(0, 8).Value = "DELIVERY"

ActiveCell.Offset(1, 0).Activate

Loop

End Sub

Désolé, je ne peux pas joindre d'exemple de tableau, ma boite est un peu parano, et on ne peux envoyer aucune pièce jointe hors de notre adresse mail pro. Du coup pas possible de charger un exemple ici.

J'espère avoir été assez clair dans mes explications

Bonjour,

Sub Delivery()
'
' Delivery Macro
'
Range("A2").Select
Do While Selection.Value <> ""
Debug.Print Selection.Offset(0, 8).Value
If Selection.Offset(0, 8).Value Like "DELIVERY*" Then ActiveCell.Offset(0, 8).Value = "DELIVERY"
ActiveCell.Offset(1, 0).Select
Loop

End Sub

attention = ne fonctionne que si DELIVERY est écrit en majuscules, sinon mettre ceci

Sub Delivery()
'
' Delivery Macro
'
Range("A2").Select
Do While Selection.Value <> ""
Debug.Print Selection.Offset(0, 8).Value
If UCase(Selection.Offset(0, 8).Value) Like "DELIVERY*" Then ActiveCell.Offset(0, 8).Value = "DELIVERY"
ActiveCell.Offset(1, 0).Select
Loop

End Sub

Oui, le fichier est en majuscule pour tous les statuts, pour ça que je l'ai laissé dans ma macro (j'ai toujours un doute sur la casse dans mes macro)

Merci pour la solution super rapide, ça fonctionne très bien.

Rechercher des sujets similaires à "remplacement texte"