Concatener selon doublons
Bonjour à tous,
Je vous explique mon problème, j'ai un tableau regroupant 3 colonnes:
Une colonne A avec une numérotation qui contient des doublons voir plus. (ex: N0194 : 3 lignes)
Une colonne B et une C qui contiennent des informations.
J'aimerai regrouper les informations de chacune des colonnes B et C selon les doublons ( Voir fichier joint )
De plus le fichier que j'ai joint n'est qu'une partie du travail, je doit en effet trouver cette formule pour un tableau semblable mais avec environ 2600 lignes.
Existe-t-il une formule magique??
Si il y a un fan de David Copperfield sur ce topic, qu'il coure à mon aide
D'avance merci
Madrileno
Petite précision, les infos doivent être séparés par :"espace/espace"
Merci beaucoup
Bonjour,
solution via une macro
lancer la macro test via alt-f8, résultats dans la 2ème feuille.
h2so4 a écrit :Bonjour,
solution via une macro
lancer la macro test via alt-f8, résultats dans la 2ème feuille.
Rebonjour,
Merci infiniment pour cette macro!!!!
Je l'ai adaptée à mon document et le résultat est tout simplement parfait et facile d'utilisation.
D'ailleurs pour info H2s04, ton doc avec macro a rendu dingue tous mes collegues de travail à commencer par mon informaticien ^^
Merci encore!!
Bonne soirée
Bonjour, je me permets de m'intégrer dans la conversation car je me suis servis du code qui est génial!
J'aurais juste voulu savoir s'il il était possible d'apporter la condition de ne concaténer que les différentes valeurs, pour éviter de se retrouver avec plusieurs fois la même valeur dans les cellules concaténées.
Je joins le code que j'ai adapté à mon cas, et je voudrais que cette condtions s'applique pour les 5 colonnes A B C F G
Merci d'avance pour votre aide!
Cdsj
Sub DOUBLON()
If MsgBox("Avez-vous penser à effectuer le tri?", vbOKCancel, "Demande de Confirmation") = vbOK Then
Set wsi = Worksheets(3)
dli = wsi.Cells(Rows.Count, 14).End(xlUp).Row
Set wso = Worksheets(4)
dlo = 0
rupt = ""
For i = 1 To dli + 1
If wsi.Cells(i, 14) <> rupt Then
If rupt <> "" Then
dlo = dlo + 1
wso.Cells(dlo, 1) = str0
wso.Cells(dlo, 2) = str1
wso.Cells(dlo, 3) = str2
wso.Cells(dlo, 4) = str3
wso.Cells(dlo, 5) = str4
wso.Cells(dlo, 6) = str5
wso.Cells(dlo, 7) = str6
wso.Cells(dlo, 8) = str7
wso.Cells(dlo, 9) = str8
wso.Cells(dlo, 10) = str9
wso.Cells(dlo, 11) = str10
wso.Cells(dlo, 12) = str11
wso.Cells(dlo, 13) = str12
wso.Cells(dlo, 14) = rupt
End If
str0 = wsi.Cells(i, 1)
str1 = wsi.Cells(i, 2)
str2 = wsi.Cells(i, 3)
str3 = wsi.Cells(i, 4)
str4 = wsi.Cells(i, 5)
str5 = wsi.Cells(i, 6)
str6 = wsi.Cells(i, 7)
str7 = wsi.Cells(i, 8)
str8 = wsi.Cells(i, 9)
str9 = wsi.Cells(i, 10)
str10 = wsi.Cells(i, 11)
str11 = wsi.Cells(i, 12)
str12 = wsi.Cells(i, 13)
rupt = wsi.Cells(i, 14)
Else
str0 = str0 & " / " & wsi.Cells(i, 1)
str1 = str1 & " / " & wsi.Cells(i, 2)
str2 = str2 & " / " & wsi.Cells(i, 3)
str5 = str5 & " / " & wsi.Cells(i, 6)
str6 = str6 & " / " & wsi.Cells(i, 7)
End If
Next i
wso.Columns("A:N").AutoFit
wso.Select
MsgBox (" Les doublons ont bien été supprimés !")
MsgBox ("Attention, il ne reste plus qu'à vérifier le contenu des cellules A,B,C,F,G et de supprimer la dernière colonne")
End If
End Sub