J'ai deux colonnes dans Excel que je veux comparer et trouver les différences entre elles.
Supposer:
Mettez en surbrillance la colonneA. Cliquez sur Mise en forme conditionnelle > Créer une nouvelle règle > Utilisez cette formule pour déterminer les cellules à formater > Entrez le ff. formule:
=countif($B:$B, $A1)
Cliquez sur le bouton Format et changez la couleur de la police en quelque chose que vous aimez.
Répétez la même chose pour la colonneB, sauf que vous utilisez cette formule et essayez une autre couleur de police.
=countif($A:$A, $B1)
Dans la colonneC, entrez le ff. formule dans la première cellule, puis copiez-le.
=if(countif($B:$B, $A1)<>0, "-", "Not in B")
Dans la colonneD, entrez le ff. formule dans la première cellule, puis copiez-le.
=if(countif($A:$A, $B1)<>0, "-", "Not in A")
Ces deux éléments devraient vous aider à visualiser les éléments manquants dans l’autre colonne.
Microsoft a un article détaillant comment trouver les doublons dans deux colonnes. Il peut être modifié assez facilement pour trouver des éléments uniques dans chaque colonne.
Par exemple, si vous souhaitez que la colonne C affiche des entrées uniques à la colonne A et que la colonne D affiche des entrées uniques à la colonne B:
A B C D
1 3 =IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),A1,"") =IF(ISERROR(MATCH(B1,$A$1:$A$5,0)),B1,"")
2 5 (fill down) (fill down)
3 8 .. ..
4 2 .. ..
5 0 .. ..
Voici la formule que vous recherchez:
=IF(ISERROR(NOT(MATCH(A1,$B$1:$B$11,0))),A1,"")
Si je comprends bien votre question:
=if(Ax = Bx; True_directive ; False_directive)
Remplacez les directives True/false par une fonction ou par une chaîne telle que "Equal" ou "different".
Dites que vous voulez trouver ceux en col. B sans correspondance en col. A. Mettez en C2:
=COUNTIF($A$2:$A$26;B2)
Cela vous donnera 1 (ou plus) s'il y a une correspondance, 0 sinon.
Vous pouvez également trier les deux colonnes individuellement, puis sélectionner les deux options, Aller à spécial, Différences de lignes. Mais cela cessera de fonctionner après le premier nouvel élément et vous devrez insérer une cellule puis recommencer.
Cela dépend du format de vos cellules et de vos exigences fonctionnelles. Avec un "0" initial, ils peuvent être formatés en texte.
Ensuite, vous pouvez utiliser la fonction IF pour comparer des cellules dans Excel:
=IF ( logical_test, value_if_true, value_if_false )
Exemple:
=IF ( A1<>A2, "not equal", "equal" )
S'ils sont formatés en nombres, vous pouvez soustraire la première colonne de l'autre afin d'obtenir la différence:
=A1-A2
Cette formule comparera directement deux cellules. Si elles sont identiques, cela affichera True
. S'il existe une différence, cela affichera False
. Cette formule n'imprimera pas les différences.
=IF(A1=B1,"True","False")
J'utilise Excel 2010 et mettez en surbrillance les deux colonnes contenant les deux ensembles de valeurs que je compare, puis cliquez sur la liste déroulante Mise en forme conditionnelle de la page d'accueil d'Excel, choisissez les règles de mise en évidence des cellules, puis différences. Il vous invite ensuite à mettre en évidence les différences ou les similitudes et vous demande quelle couleur de surbrillance vous souhaitez utiliser ...
La comparaison peut être faite avec le code Excel VBA. Le processus de comparaison peut être effectué avec la fonction Excel VBA Worksheet.Countif
.
Deux colonnes de différentes feuilles de calcul ont été comparées dans ce modèle. Des résultats différents ont été trouvés, une ligne entière ayant été copiée dans la deuxième feuille de calcul.
Code:
Dim stk, msb As Worksheet
Set stk = Sheets("Page1")
Set msb = Sheets("Page2")
Application.ScreenUpdating = False
sat = (msb.Range("A" & Rows.Count).End(xlUp).Row) + 1
For i = 2 To stk.Range("A" & Rows.Count).End(xlUp).Row
If WorksheetFunction.CountIf(msb.Range("A2:A" & msb.Range("A" & Rows.Count).End(xlUp).Row), stk.Cells(i, "A")) = 0 Then
msb.Range("a" & sat).EntireRow.Value = stk.Range("a" & i).EntireRow.Value
msb.Range("a" & sat).Interior.ColorIndex = 22
sat = sat + 1
End If
Next
...
La vidéo du didacticiel: https://www.youtube.com/watch?v=Vt4_hEPsKt8
La combinaison NOT MATCH function fonctionne bien. Les travaux suivants aussi:
=IF(ISERROR(VLOOKUP(<< élément dans une liste plus grande >>, << liste plus petite >>, 1 ,FALSE)), << élément dans une liste plus grande >>, ""
N'OUBLIEZ PAS: la plus petite liste DOIT être triée ASCENDING - une exigence de vlookup
Ceci utilise un autre outil mais je viens de trouver cela très facile à faire. Utiliser Notepad ++:
Dans Excel, assurez-vous que vos 2 colonnes sont triées dans le même ordre, puis copiez-les et collez-les dans 2 nouveaux fichiers texte, puis exécutez une comparaison (à partir du menu des plugins).