Pb doublon

Bonjour, je suis novice en VBA, et je souhaiterais un peu d'aide pour une macro.

Je voudrais que les doublons soit supprimés selon les noms et les prénoms

Voici, mon code :

Sub DOUBLON()
    Set wsi = Worksheets(3)
    dli = wsi.Cells(Rows.Count, 9).End(xlUp).Row
    Set wso = Worksheets(4)
    dlo = 0
    rupt = ""
    For I = 1 To dli + 1
      If wsi.Cells(I, 9) <> 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) = rupt
                wso.Cells(dlo, 10) = str9
                wso.Cells(dlo, 11) = str10
                wso.Cells(dlo, 12) = str11
                wso.Cells(dlo, 13) = str12

            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)
            rupt = wsi.Cells(I, 9)
            str9 = wsi.Cells(I, 10)
            str10 = wsi.Cells(I, 11)
            str11 = wsi.Cells(I, 12)
            str12 = wsi.Cells(I, 13)

        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:M").AutoFit
    wso.Select

End Sub

Les noms étant en colonne 9 et les prénoms colonnes 10

Merci de m'aider !

Cdsj


Il faudrait que la conditions s'applique pour les deux cellules et non uniquement celle des noms!!

merci bcp !

Cdsj

Bonjour,

Une piste avec suppression des lignes en doublon :

Sub Test()

    Dim Plage As Range
    Dim Cel As Range
    Dim Dico As Object
    Dim Chaine As String
    Dim Tbl() As Long
    Dim I As Long

    Set Dico = CreateObject("Scripting.Dictionary")

    With Worksheets("BDMedical"): Set Plage = .Range(.Cells(2, 9), .Cells(.Rows.Count, 9).End(xlUp)): End With

    For Each Cel In Plage

        Chaine = Cel.Value & Cel.Offset(, 1).Value

        If Dico.exists(Chaine) = False Then
            Dico.Add Chaine, ""
        Else

            I = I + 1
            ReDim Preserve Tbl(1 To I)
            Tbl(I) = Cel.Row

        End If

    Next Cel

    If Not (Not Tbl()) Then

        For I = UBound(Tbl) To 1 Step -1

            Rows(Tbl(I)).EntireRow.Delete

        Next I

    End If

End Sub

Merci de votre réponse!

J'ai du mal avec le code, alors, je prends le temps de l'examiner!

je n'avais pas actualiser ma page...

Je n'y arrive pas !

Je joins mon fichier si vous pouvez y jeter un œil !

J'ai finalement concaténer ces deux cellules pour me permettre de différencier les lignes, mais du coup ça me rajoute une étape supplémentaire en effectuant le tri moi même!

De plus, j'aurais voulu que la fusion des cellules de A à G s'effectue que si le texte est différent!

Par exemple

2 / 4 / 6 / St Martin / saint Martin / Paris

devienne :

2 / 4 / 6 St Martin / Paris

Merci encore !

Re,

Dans ton post originel, tu dis :

Je voudrais que les doublons soit supprimés selon les noms et les prénoms...

Les noms étant en colonne 9 et les prénoms colonnes 10...

Il faudrait que la conditions s'applique pour les deux cellules et non uniquement celle des noms!!

et donc, quel rapport avec ceci ?

De plus, j'aurais voulu que la fusion des cellules de A à G s'effectue que si le texte est différent!

Donc, en attendant des explications claires et concises, j'en reste là !

Ah oui pardon, dsl, je me suis pris la tête tte la journée hier sur ce dossier.

En fait j'aurais souhaiter que :

Dans l'onglet publipostage,

1- la suppression des doublons se base sur la colonne des noms ET des prénoms car, il peut y avoir 2 mêmes noms sans le même prénom. Donc obtenir 1 ligne distincte par nom (d'où le fait que je concatene ces 2 colonnes pour me permettre de bien les différencier!)

2- Les infos correspondantes à chaque nom, doivent se retrouver dans la ligne nouvellement crée par la fusion des doublons séparées par des " / " (L'idéal étant que si l'information est la même, qu'elle ne soit pas doublée, pour évitée la redondance dans la même cellule)

J'espère que je suis plus clair !

merci d'avance,

Cdsj

Rechercher des sujets similaires à "doublon"