Comparer deux colonnes

Bonjour, j'aurais besoin d'aide svp pour écrire une macro.

j'aimerais comparer deux colonnes se trouvant dans des feuilles séparées. En fait, je voudrais utiliser une macro qui me permettra de récupérer tous les codes qui figurent dans les deux colonnes.

Feuille 1 = partenaire

Feuille 2 = Entreprise

Feuille 3 = Analyse

Les codes identiques se trouvant dans la Feuille 1 et 2 doivent apparaitre dans la feuille 3.

Merci Enormément

15exemplevba.zip (32.96 Ko)

Bonjour,

Une piste :

Sub Doublons()

    Dim Tbl() As String
    Dim PlgPartenaire As Range
    Dim PlgEntreprise As Range
    Dim Cel As Range
    Dim CelTrouve As Range
    Dim I As Long

    With Worksheets("Partenaire"): Set PlgPartenaire = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
    With Worksheets("entreprise"): Set PlgEntreprise = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With

    For Each Cel In PlgPartenaire

        Set CelTrouve = PlgEntreprise.Find(Cel.Value, , xlValues, xlWhole)

        If Not CelTrouve Is Nothing Then

            I = I + 1: ReDim Preserve Tbl(1 To I)
            Tbl(I) = Format(Cel.Value, "00000000000")

        End If

    Next Cel

    With Worksheets("Analyse"): .Range(.Cells(1, 1), .Cells(UBound(Tbl), 1)).Value = Application.Transpose(Tbl): End With

End Sub

Bonjour à tous

Une variante.

Bye !

26exemplevba-v1.zip (40.84 Ko)

Bonjour,

Une proposition pour Excel 2016 (Power Query natif).

Pas de VBA et un procédé simple à mettre en place.

A te relire.

Cdlt.

Bonjour Theze,

merci pour la solution elle fonctionne, mais du coup j'ai un autre problème. j'ai des numéros qui apparaissent plusieurs fois, comment faire pour que le numéro n'apparaisse qu'une fois s'il existe dans les deux tableaux stp. merci

Bonjour,

Une piste :

Sub Doublons()

    Dim Tbl() As String
    Dim PlgPartenaire As Range
    Dim PlgEntreprise As Range
    Dim Cel As Range
    Dim CelTrouve As Range
    Dim I As Long

    With Worksheets("Partenaire"): Set PlgPartenaire = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
    With Worksheets("entreprise"): Set PlgEntreprise = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With

    For Each Cel In PlgPartenaire

        Set CelTrouve = PlgEntreprise.Find(Cel.Value, , xlValues, xlWhole)

        If Not CelTrouve Is Nothing Then

            I = I + 1: ReDim Preserve Tbl(1 To I)
            Tbl(I) = Format(Cel.Value, "00000000000")

        End If

    Next Cel

    With Worksheets("Analyse"): .Range(.Cells(1, 1), .Cells(UBound(Tbl), 1)).Value = Application.Transpose(Tbl): End With

End Sub

Bonjour,

Ma solution prend en compte cette éventualité, me semble-t-il?

Tout comme celle de gmb (que je salue).

Cdlt.

Bonjour,

je ne sais pas utiliser le Power Query natif ; j'aimerais utiliser du VBA.

Du coup je viens d'utiliser celui de gmb et ca fonctionne merciii.

Bonjour,

Ma solution prend en compte cette éventualité, me semble-t-il?

Tout comme celle de gmb (que je salue).

Cdlt.

Bonjour, Merci beaucoup pour la solution ca fonctionne.

Bonjour à tous

Une variante.

Bye !

Rechercher des sujets similaires à "comparer deux colonnes"