Forum Clubic

Pb: VBA sous Excel -> Comparaison

je souhaites faire une comparaison du 1er terme de ma colonne 1 et tout les terme de la colonne 2 puis le 2eme avec toute la colonne 2 etc … et mettre le resultat pour "ajout" ou "suppression" ou "identique" en colonne 3
enfin faire de meme de colonne 1 vers tout de la colonne 2
resultat en 4

Merci de votre aide.

tu pourrais donner un exemple car ca semble pas clair

’ Compare les colonnes A et B et inscrit 0 en colonne C lorsque
’ une valeur en colonne A existe aussi dans la colonne B
’ Détourne l’utilisation de la fonction Match (Equiv) pour trouver
’ les données de A qui sont présentes dans B

Sub CompareTwoColumns()

Dim rngA As Range
Dim rngB As Range

Set rngA = Range(Cells(1, "A"), Cells(Rows.Count, "A").End(xlUp))
Set rngB = Range(Cells(1, "B"), Cells(Rows.Count, "B").End(xlUp))

For Each cell In rngA
If Not IsError(Application.Match(cell.Value, rngB, 0)) Then
Cells(cell.Row, "C").Value = 0
End If
Next
End Sub

2 éme exemple :

'Compare les colonnes A et B (à adapter)
'Inscrit en colonne C les valeurs de la colonne B
'qui ne figurent pas dans la colonne A
'Utilise NB.SI

Sub CompareAEtB()
'Tom Ogilvy, mpep
Dim rngA As Range
Dim rngB As Range
Dim rw As Long

Set rngA = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
Set rngB = Range(Cells(1, 2), Cells(Rows.Count, 2).End(xlUp))

rw = 1
For Each cell In rngB
If Application.CountIf(rngA, cell.Value) = 0 Then
Cells(rw, 3).Value = cell.Value
rw = rw + 1
End If
Next
End Sub