VBA Test comparaison 2 colonnes excel

lucdib Messages postés 2 Statut Membre -  
 Obiwan21 -
Bonjour,

Je cherche à mettre en place le test suivant dans une appli VBA:

Tester si les valeurs d'une colonne dans un onglet sont présentes dans une autre colonne d'un autre onglet.
Sinon, mettre un message dans msgbox.

Exemple :
Colonne 1, onglet 1:
1
2
3
7
4
5

colonne 2, onglet 2
1
2
3
4
5
6
dans ce cas, le test doit m'indiquer via un msgbox qu'une nouvelle valeur est apparue dans la colonne onglet 1 (en l'occurence la valeur 7)
Y a-t-il un moyen de faire cela en VBA ?
Je un peu fouillé mais je tourne en rond (ou alors je suis fatigué).
Pour l'instant j'arrive seulement à comparer cellules par cellules.
L'idée serait de faire une sorte de RECHERCHEV

Merci d'avance de vos réponses.
Configuration: Windows XP Internet Explorer 6.0

1 réponse

  1. Obiwan21
     
    La macro ci-dessous permet de comparer 2 listes sur 2 feuilles différentes et d'en extraire les données absentes dans la première liste.

    Sub Nouveau()

    Range("nom").ClearContents
    Sheets("feuil1").Activate
    Range("B1").Select
    Selection.AutoFilter Field:=2
    For k = 1 To ActiveWorkbook.Sheets.Count
    If InStr(1, Sheets(k).Name, "feuil1", vbTextCompare) > 0 Then
    Sheets(k).Activate
    Range("A1").Select
    Do While Not IsEmpty(ActiveCell.Value)
    numitem = ActiveCell.Value
    Sheets("Listrecherche").Activate
    Set celldeb = ActiveCell
    Set c = Columns(1).Find(numitem, LookIn:=xlValues)
    If Not c Is Nothing Then
    If c <> celldeb And c.Value = numitem Then
    c.Offset(0, 1).Value = 1
    End If
    End If
    Sheets(k).Activate
    ActiveCell.Offset(1, 0).Select
    Loop
    End If
    Next
    Sheets("ListRecherche").Activate
    Selection.AutoFilter Field:=2, Criteria1:="="
    Range("A1").Select
    Application.StatusBar = "Pret"
    If Range("NbListItem").Value <> Range("NbExiste").Value Then
    MsgBox "Consulter la liste des nouveaux Items"
    End If
    Exit Sub

    End Sub
    2