Duplication de la ligne SI

Bonjour,

Cela fait des années que je ne code plus en VBA, et là j'en aurai besoin.

Je vous explique je fais une extraction de produits sur un outil de données. (+ de 10000 lignes)

Sauf que si le produit a deux ou trois ou quatre EAN, ils se mettent tous dans la même case. Sauf que pour mon analyse après c'est compliqué, car j'ai besoin d'une cellule = un code.

Quand il y a plusieurs codes EAN, ils sont séparés par un "_".

J'aimerais que dès qu'il y a plusieurs codes EAN , les lignes se dédoublent en changeant juste le code

Exemple en PJ, mon extraction, sur ma feuille 1 j'ai mit en couleur les lignes qui devront changer et en feuille 2 le résultat attendu, ou l'ont voit que la ligne 14 s'est doublé avec les mêmes données en changeant le code et idem pour la ligne 32 qui s'est divisé en 5 fois car 5 codes différents

Merci à vous pour votre aide

Edit Dan :

Données personnelles dans la feuille Paramètres

Bonjour

Le plus simple est d'utiliser PowerQuery, intgré à Excel 2016 et +, en add on sur 2013. Plus simple et efficace que VBA pour ce type de cas

Bonjour,

Désolé pour votre fichier que j'ai dû retirer par suite de données sensibles dans votre feuille "params"

Si vous voulez le faire avec un code au lieu de la méthode Power query, essayez avec ce code qui prendra les 13 premiers caractères

Sub test()
Dim plage As Range, cel As Range
Set plage = Range("P5:P" & Range("P" & Rows.Count).End(xlUp).Row)
For Each cel In plage
    cel.Value = Left(cel.Value, 13)
Next cel
End Sub

Si terminé -->

Cordialement

Rechercher des sujets similaires à "duplication ligne"