Comment comparer deux colonnes Excel ?
Besoin de repérer vite les différences entre deux colonnes Excel ? Voici les méthodes fiables pour comparer, surligner et analyser sans te prendre la tête.
🎨 illu Tu veux savoir si deux listes sont identiques, quoi manque d’un côté, ou repérer les doublons en un clin d’œil ? Bonne nouvelle: Excel sait tout faire… à condition d’utiliser la bonne méthode.
Les bases pour vérifier si deux cellules correspondent ✅
Si tu compares ligne à ligne (A2 avec B2, puis A3 avec B3, etc.), commence simple :
- Test direct:
=A2=B2renvoie VRAI/FAUX. - Avec un libellé clair:
=SI(A2=B2;"OK";"Différent"). - Sensible à la casse (majuscules/minuscules) :
=EXACT(A2;B2)renvoie VRAI seulement si tout est identique, y compris la casse. - Ignorer les espaces superflus:
=SI(SUPPRESPACE(A2)=SUPPRESPACE(B2);"OK";"Différent").
Astuce pratique:
- Double-clique la poignée de recopie pour propager la formule jusqu’en bas.
- Gèle les entêtes et nomme tes colonnes pour rester lisible.
💡 Conseil: standardise AVANT de comparer. Exemple:
MINUSCULE(SUPPRESPACE(A2))et idem pour B2. Tu évites 80% des “faux différents” dus aux espaces et à la casse.
Surligner automatiquement les différences avec la mise en forme conditionnelle 🎯
Idéal si tu préfères un repérage visuel.
- Différence cellule à cellule (A2 vs B2):
- Sélectionne la plage B2:B100 (adapte la hauteur).
- Accueil > Mise en forme conditionnelle > Nouvelle règle > “Utiliser une formule…”.
- Formule:
=$A2<>$B2. - Choisis un remplissage rouge clair, par exemple.
- Mettre en évidence ce qui est présent dans B mais pas dans A (comparaison par appartenance, pas cellule à cellule):
- Sélectionne B2:B100.
- Nouvelle règle > “Utiliser une formule…”.
- Formule:
=NB.SI($A:$A;B2)=0. - Style d’alerte (orange/rouge). Répète à l’inverse pour A vs B:
=NB.SI($B:$B;A2)=0.
- Repérer doublons dans une seule colonne:
- Accueil > Mise en forme conditionnelle > Règles des valeurs en double.
C’est visuel, rapide, et parfait pour un premier tri avant une analyse plus poussée.
Identifier ce qui manque d’une liste à l’autre (A vs B) 🔍
Quand tes listes ne sont pas alignées ligne à ligne (ex: deux exports d’outils différents), utilise des fonctions de recherche/comptage.
-
Marquer les valeurs de A absentes de B (en C2):
=SI(NB.SI($B:$B;A2)=0;"Manque dans B";"OK")Recopie vers le bas. Tu sais instantanément ce qui n’apparaît pas dans B. -
Lister uniquement les “manquants” de A par rapport à B: filtre la colonne C sur “Manque dans B”.
-
Vérifier B vs A (symétrique):
=SI(NB.SI($A:$A;B2)=0;"Manque dans A";"OK") -
Alternative moderne avec RECHERCHEX (XLOOKUP):
=SI(ESTNA(RECHERCHEX(A2;$B:$B;$B:$B));"Manque dans B";"OK")Avantage: plus lisible que des combinaisons de RECHERCHEV et ESTNA.
💡 Astuce filtre: transforme tes plages en “Tableaux” (Ctrl+T). Tu gagnes des filtres, des en-têtes fixes et des références structurées (beaucoup plus propres à maintenir).
Tableau récap: choisis la bonne méthode
| Méthode | Pour quoi | Niveau | Avantages | Limites |
|---|---|---|---|---|
| A2=B2 / SI | Comparaison ligne à ligne | Débutant | Ultra simple, rapide | Ne gère pas les listes non alignées |
| EXACT | Égalité stricte (casse incluse) | Intermédiaire | Détecte les écarts subtils | Trop strict si la casse varie |
| NB.SI | Présence/absence entre listes | Intermédiaire | Polyvalent, robuste | Moins lisible pour de très gros modèles |
| RECHERCHEX | Trouver/rapporter des manques | Intermédiaire/Avancé | Lisible, flexible, remplace RECHERCHEV | Version récente d’Excel requise |
| Mise en forme conditionnelle | Surligner visuellement | Débutant | Impact visuel, paramétrage rapide | Pas de colonne de résultat exploitable |
| Power Query | Comparer de grandes tables | Avancé | Jointures, anti-jointures, automatisable | Un petit temps d’apprentissage |
Avantages / inconvénients des approches courantes
-
Formules classiques (SI, NB.SI, RECHERCHEX)
- ✅ Flexibles, traçables, parfaites pour un rapport réutilisable
- ✅ Fonctionnent sans modifier la mise en page
- ❌ Peuvent devenir verbeuses sur des modèles complexes
- ❌ Risque d’erreurs de références si la structure bouge
-
Mise en forme conditionnelle
- ✅ Idéale pour un contrôle visuel immédiat
- ✅ Très rapide à mettre en place
- ❌ Difficile à exporter/partager comme résultat brut
- ❌ Multiplie les règles si on n’est pas rigoureux
-
Power Query
- ✅ Comparaison propre de gros volumes (jointures, transformations)
- ✅ Rafraîchissable en un clic quand les données changent
- ❌ Courbe d’apprentissage et interface différente d’Excel “cellule à cellule”
Nettoie tes données avant de comparer (game changer) 🧼
Les “faux écarts” viennent souvent d’un formatage sale. Quelques réflexes :
- Espaces en trop:
SUPPRESPACE(A2). - Casse incohérente:
MINUSCULE(A2)(ouMAJUSCULEsi tu préfères). - Nombres stockés en texte: applique “Convertir en nombre” (petit losange d’erreur) ou
=VALEUR(A2). - Dates: assure-toi que ce sont de vraies dates (test: change le format en Nombre). Si besoin, recompose:
=DATE(ANNEE(A2);MOIS(A2);JOUR(A2)). - Zéros non significatifs: harmonise (ex: codes avec 5 caractères via
=TEXTE(A2;"00000")).
💡 Crée des colonnes “propres” à côté des colonnes sources (sans écraser l’original). Tu peux ensuite comparer “propre à propre” et documenter ta démarche.
Cas pratiques express (copie/colle et go)
- Comparer A2:B2 en ignorant casse et espaces:
=SI(MINUSCULE(SUPPRESPACE(A2))=MINUSCULE(SUPPRESPACE(B2));"OK";"Diff") - Marquer si A2 existe quelque part dans B:B:
=SI(NB.SI($B:$B;A2)>0;"Trouvé";"Absent") - Surligner ce qui est dans B mais pas dans A (MFC sur B2:B):
=NB.SI($A:$A;B2)=0 - Chercher des correspondances partielles (ex: A2 inclus dans une chaîne de B):
=NB.SI($B:$B;"*"&A2&"*")>0 - Feuilles différentes (Feuil2!B:B):
=SI(NB.SI(Feuil2!$B:$B;A2)=0;"Manque en Feuil2";"OK")
Comparer des grandes listes proprement avec Power Query ⚙️
Quand tu as des milliers de lignes (ou des sources récurrentes), Power Query est ton allié.
- Sélectionne ta première table > Données > À partir d’un tableau/plage (ou “Obtenir des données”). Nomme-la “A”. Fais pareil pour “B”.
- Dans Power Query: Accueil > Combiner > Fusionner les requêtes.
- Choisis “A” et “B”, sélectionne les colonnes clés, et le type de jointure:
- Inner (Intersection) : ce qui est commun aux deux
- Left Anti (A sans B) : ce qui manque dans B
- Right Anti (B sans A) : ce qui manque dans A
- Déploie la colonne issue de la jointure si besoin, puis “Fermer & Charger”.
Résultat: des feuilles dédiées “A sans B”, “B sans A”, “Intersection” prêtes à être mises à jour via “Actualiser tout”. Parfait pour des contrôles réguliers (exports CRM, compta, RH, etc.).
Erreurs fréquentes à éviter 🙅♀️
- Mélanger comparaison ligne à ligne et comparaison par appartenance: clarifie d’abord ton besoin.
- Oublier de figer les références ($) dans les formules de MFC: ta mise en évidence part en vrille.
- Comparer des données “sales”: toujours standardiser (espaces, casse, formats) avant.
- Conserver des règles MFC en doublon: nettoie tes règles pour éviter les conflits visuels.
💡 Pense “documentation légère”: une feuille “README” avec 5 lignes expliquant ta méthode et tes formules. Le toi du futur (ou ton/ta collègue) dira merci.
🙋 FAQ — on répond à tout
Quelle est la formule la plus simple pour comparer deux colonnes en face à face ? +
Utilise `=A2=B2` pour VRAI/FAUX, ou `=SI(A2=B2;"OK";"Différent")` si tu veux un libellé clair. Recopie vers le bas pour couvrir toute la colonne.
Comment ignorer les espaces ou la casse lors de la comparaison ? +
Enveloppe tes valeurs avec `SUPPRESPACE` et `MINUSCULE`: `=SI(MINUSCULE(SUPPRESPACE(A2))=MINUSCULE(SUPPRESPACE(B2));"OK";"Diff")`.
Comment savoir ce qui manque dans B par rapport à A ? +
Ajoute une colonne avec `=SI(NB.SI($B:$B;A2)=0;"Manque dans B";"OK")` puis filtre sur “Manque dans B”. Fais l’inverse pour B vs A.
RECHERCHEV ou RECHERCHEX pour comparer deux colonnes ? +
RECHERCHEX (XLOOKUP) est plus moderne et flexible (recherche gauche/droite, valeur si non trouvé). Si tu l’as, préfère `RECHERCHEX`. Sinon, `NB.SI` ou `RECHERCHEV` restent valables.
Peut-on comparer des colonnes sur deux feuilles différentes ? +
Oui. Référence la feuille cible, par exemple `=SI(NB.SI(Feuil2!$B:$B;A2)=0;"Manque en Feuil2";"OK")`. Même logique avec RECHERCHEX: `RECHERCHEX(A2;Feuil2!$B:$B;Feuil2!$B:$B)`.
T'as kiffé ? Fais tourner ! 🔁
Un partage = un max de love pour la rédac.