Microsoft 365 Extraire les différences entre 2 colonnes

  • Initiateur de la discussion Initiateur de la discussion Sissou71
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Sissou71

XLDnaute Occasionnel
Bonjour,

J'ai un fichier dans lequel des utilisateurs renseignent à la main des valeurs affichées dans un outil de saisie (Feuille A dans le fichier ci-joint)
Je récupère un csv de l'outil de saisie avec toutes les valeurs existantes (Feuille B dans le fichier ci-joint)

J'aimerai à des fins de contrôle (erreur de frappe, oubli de saisie...) afficher dans une nouvelle feuille les données qui sont différentes pour chacune des feuilles (feuille Différence)

Par MFC je peux colorer les cellules en double mais : mes données ne sont pas dans la même feuille et mon besoin est d'afficher uniquement les valeurs trouvées dans une feuille et non présentes dans l'autre pour pouvoir effectuer les corrections nécessaires.

Est-ce possible et comment ?
Cécile
 

Pièces jointes

Solution
Bonjour (ou Re-),
Avec 365
Ajout de 2 listes dynamiques "ListA" et "ListB" (formules dans l'onglet "Différence", colonne G)
La formule pour la 1ère diff :
Code:
=SIERREUR(UNIQUE(FILTRE(ListA;ESTNA(EQUIVX(ListA;ListB;0))));"")
Le fichier
Bonjour

Avec cette macro par exemple

VB:
Sub CompareListes()
Dim DicoA As Object
Dim DicoB As Object

Set DicoA = CreateObject("Scripting.dictionary")
Set DicoB = CreateObject("Scripting.dictionary")
With Sheets("A")
    LastLine = .Range("B" & .Rows.Count).End(xlUp).Row
    For i = 2 To LastLine
        clé = .Range("B" & i)
        If Not DicoA.exists(clé) Then
            DicoA.Add clé, i
        End If
    Next i
End With
With Sheets("B")
    LastLine = .Range("A" & .Rows.Count).End(xlUp).Row
    For i = 2 To LastLine
        clé = .Range("A" & i)
        If Not DicoB.exists(clé) Then
            DicoB.Add clé, i
        End If
    Next i
End With

With Sheets("Différence")
    For Each clé In DicoA.keys
        If Not DicoB.exists(clé) Then
            .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0) = clé
        End If
    Next clé
    
    For Each clé In DicoB.keys
        If Not DicoA.exists(clé) Then
            .Range("B" & .Rows.Count).End(xlUp).Offset(1, 0) = clé
        End If
    Next clé
    
End With

End Sub
 
Bonjour

Avec cette macro par exemple

VB:
Sub CompareListes()
Dim DicoA As Object
Dim DicoB As Object

Set DicoA = CreateObject("Scripting.dictionary")
Set DicoB = CreateObject("Scripting.dictionary")
With Sheets("A")
    LastLine = .Range("B" & .Rows.Count).End(xlUp).Row
    For i = 2 To LastLine
        clé = .Range("B" & i)
        If Not DicoA.exists(clé) Then
            DicoA.Add clé, i
        End If
    Next i
End With
With Sheets("B")
    LastLine = .Range("A" & .Rows.Count).End(xlUp).Row
    For i = 2 To LastLine
        clé = .Range("A" & i)
        If Not DicoB.exists(clé) Then
            DicoB.Add clé, i
        End If
    Next i
End With

With Sheets("Différence")
    For Each clé In DicoA.keys
        If Not DicoB.exists(clé) Then
            .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0) = clé
        End If
    Next clé
   
    For Each clé In DicoB.keys
        If Not DicoA.exists(clé) Then
            .Range("B" & .Rows.Count).End(xlUp).Offset(1, 0) = clé
        End If
    Next clé
   
End With

End Sub
Merci Vgendron je me doutais que ca passerait facilement avec une macro. J'essayais d'éviter dans mon entreprise ils ont restreints les fichiers avec macro sur sharepoint et personne si je m'absente ne connait les macros excel. Alors que les formules ils peuvent au moins les lire.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
84
Réponses
16
Affichages
139
Retour