Aller directement à l’outil
ViewCSV
Aucun envoi de fichier

Comparer des fichiers CSV

Fichier d’origine
orders.csv· DONNÉES D’EXEMPLE15 lignes · 8 colonnes
Fichier mis à jour
orders-updated.csv· DONNÉES D’EXEMPLE15 lignes · 8 colonnes
Apparier les lignes
Colonnes clés
Les colonnes qui identifient une ligne dans les deux fichiers, comme un numéro de commande.
Colonnes à ignorer
  • Lignes : 1 ajoutées, 1 supprimées, 2 modifiées, 12 inchangées. Valeurs modifiées : 2.
  • 1 clé apparaît plusieurs fois (première : 001043). Les répétitions sont appariées dans l’ordre.
  • Modifiée001042ligne 2 de l’original ligne 2 du fichier mis à jour
    statuspendingshipped
  • Modifiée001044ligne 4 de l’original ligne 4 du fichier mis à jour
    quantity212
  • Supprimée001046ligne 6 de l’original
  • Ajoutée001099 ligne 15 du fichier mis à jour

Le fichier téléchargé contient une ligne par valeur modifiée, ainsi que les lignes ajoutées et supprimées.

Ouvrez le fichier d’origine et le fichier mis à jour, choisissez la colonne qui identifie une ligne, comme un numéro de commande ou une référence SKU, et les différences s’affichent aussitôt : les lignes présentes seulement dans le fichier mis à jour sont ajoutées, celles présentes seulement dans l’original sont supprimées, et celles présentes dans les deux avec des valeurs différentes sont modifiées, avec chaque valeur avant et après. Une ligne peut changer de place dans le fichier sans compter comme une modification. Téléchargez le résultat sous forme de rapport CSV, à raison d’une ligne par cellule modifiée. Les deux fichiers sont comparés dans votre navigateur, sans jamais être envoyés.

Comparer deux fichiers CSV, étape par étape

  1. Ouvrez le fichier d’origine dans le premier emplacement et le fichier mis à jour dans le second. Chaque emplacement a ses propres paramètres d’importation (séparateur, en-tête, encodage) : un export à points-virgules peut donc être comparé à un export à virgules.
  2. Choisissez l’association par clé et cochez une ou plusieurs colonnes clés parmi celles que les deux fichiers ont en commun. Prenez plusieurs colonnes quand aucune n’est unique à elle seule, par exemple order_id et line.
  3. Réglez les options de comparaison, consultez le résumé et la liste des différences, filtrée au besoin sur les lignes ajoutées, supprimées ou modifiées, puis téléchargez le rapport des changements.

Choisissez plutôt l’association par position lorsque les fichiers n’ont pas de colonne d’identifiant et que les lignes sont dans le même ordre : la ligne 1 est comparée à la ligne 1, et ainsi de suite. Une seule ligne insérée fait alors paraître modifiées toutes les lignes suivantes : utilisez une clé dès que vous en avez une.

Options de comparaison

Ignorer la casseDesk Lamp est égal à desk lamp. S’applique aux colonnes clés comme aux valeurs.
Ignorer les espacesSupprime les espaces en début et en fin de valeur et traite toute suite d’espaces, de tabulations ou de sauts de ligne à l’intérieur d’une valeur comme une seule espace avant la comparaison. S’applique aussi aux clés.
Tolérance numériqueLorsque les deux valeurs sont des nombres, elles sont considérées comme égales si l’écart ne dépasse pas cette quantité, par exemple 0.01. Le calcul se fait en décimal exact, pas en virgule flottante, et une tolérance de 0 considère 45.0 et 45.00 comme le même nombre. Une valeur n’est un nombre que si elle est écrite avec un point décimal et sans séparateur de milliers : 1,000 reste du texte, tandis que 1e3 est lu comme 1000. Une tolérance rend aussi 007 égal à 7, puisque les deux se lisent comme des nombres. Laissez le champ vide pour comparer le texte à l’identique.
Ignorer des colonnesColonnes entièrement exclues de la comparaison, comme updated_at ou un horodatage d’export qui change à chaque fois.

Les colonnes qui n’existent que dans un des deux fichiers sont listées dans le résumé et ne sont pas comparées. Renommez-les avec Réorganiser les colonnes s’il s’agit de la même colonne sous un nouveau nom.

Clés en double et clés vides

Une clé doit identifier une seule ligne. Quand ce n’est pas le cas, rien n’est masqué : le résumé compte les clés répétées et nomme la première, et les lignes qui partagent une clé sont appariées dans leur ordre d’apparition. La première ligne d’origine de clé 1 est comparée à la première ligne mise à jour de clé 1, la deuxième à la deuxième, et les lignes en surplus de part et d’autre sont signalées comme supprimées ou ajoutées.

Cet appariement peut signaler une modification qui n’est en réalité qu’une inversion de deux lignes de même clé. Si le résumé mentionne des clés en double, ajoutez une autre colonne clé jusqu’à ce que chaque combinaison soit unique. Les lignes dont toutes les colonnes clés sont vides sont comptées à part, car elles proviennent en général de lignes vides ou d’un export défectueux.

Lire les résultats et le rapport

Le résumé indique le nombre de lignes ajoutées, supprimées, modifiées et inchangées, ainsi que le nombre total de cellules modifiées. La liste présente les différences dans l’ordre du fichier d’origine, suivies des lignes qui n’existent que dans le fichier mis à jour. Chaque différence affiche la clé et le numéro de ligne dans chaque fichier, les lignes de données étant comptées à partir de 1, sans l’en-tête. La page liste les 500 premières différences ; le rapport les contient toutes.

changeadded (ajoutée), removed (supprimée) ou changed (modifiée).
Colonnes clésLa valeur de la clé. Si l’option « ignorer la casse » ou « ignorer les espaces » est activée, la clé apparaît telle qu’elle a été comparée, en minuscules ou sans espaces superflus. Avec l’association par position, une seule colonne row contient le numéro de ligne.
original_row, updated_rowNuméros de ligne de données dans chaque fichier ; vide du côté où la ligne n’existe pas.
column, original_value, updated_valueUne ligne par cellule modifiée. Vides pour les lignes ajoutées et supprimées, qui occupent chacune une seule ligne.

Le rapport est un CSV en UTF-8 nommé d’après le fichier mis à jour, par exemple feb-changes.csv. Ouvrez-le dans le lecteur CSV pour trier ou rechercher les changements.

En cas de problème

  • Toutes les lignes apparaissent comme ajoutées et supprimées. Les valeurs de clé ne sont pas écrites de la même façon dans les deux fichiers, par exemple 00123 face à 123, ou avec une espace finale. Activez l’option qui ignore les espaces, ou corrigez la colonne dans Nettoyer un CSV. Les zéros initiaux comptent toujours dans les clés, car celles-ci sont comparées comme du texte.
  • Des nombres égaux apparaissent comme modifiés. 45.00 et 45.0 sont des textes différents ; saisissez une tolérance comme 0 ou 0.005 pour les comparer comme des nombres. Les nombres écrits avec une virgule décimale ou des séparateurs de milliers, comme ceux d’un export Excel français, sont toujours comparés comme du texte.
  • Une colonne clé ne figure pas dans la liste. Seules les colonnes présentes dans les deux fichiers peuvent servir de clé, et leurs noms doivent correspondre exactement. Vérifiez les paramètres d’importation si tout l’en-tête est arrivé dans une seule colonne.
  • Toutes les lignes sont modifiées à partir d’un certain point. Vous associez les lignes par position, et une ligne a été insérée ou supprimée. Passez à l’association par clé.

Limites et confidentialité

Chaque fichier peut atteindre 25 Mo, 100 000 lignes, 250 colonnes et 2 millions de cellules. La comparaison ne fonctionne pas en flux : les deux fichiers sont gardés en mémoire, et les différences se mettent à jour quand vous changez les options.

Les fichiers sont comparés dans votre navigateur et ne sont jamais envoyés sur un serveur. Pour réunir les deux versions plutôt que de les comparer, utilisez Fusionner des fichiers CSV ; pour contrôler un fichier à l’aide de règles, utilisez Valider un CSV.

Exemple

Deux listes de produits ayant sku pour clé, comparées avec les réglages exacts par défaut. Les lignes ne sont pas dans le même ordre, ce qui n’a aucune importance. En ignorant la casse et les espaces, avec une tolérance de 0.001, seule subsiste la modification de stock sur 00456.

CSV
jan.csv (original)
sku,name,price,stock
00123,Desk lamp,19.90,4
00456,Shelf,45.00,2
00789,Stool,12.00,9

feb.csv (updated)
sku,name,price,stock
00456,Shelf,45.0,0
00123,Desk Lamp ,19.90,4
01010,Bench,80.00,1
feb-changes.csv
change,sku,original_row,updated_row,column,original_value,updated_value
changed,00123,1,2,name,Desk lamp,"Desk Lamp "
changed,00456,2,1,price,45.00,45.0
changed,00456,2,1,stock,2,0
removed,00789,3,,,,
added,01010,,3,,,

Questions fréquentes

L’ordre des lignes a-t-il une importance ?

Pas avec l’association par clé : chaque ligne est retrouvée grâce à sa clé, où qu’elle se trouve dans chaque fichier. L’ordre ne compte qu’avec l’association par position.

Quel fichier faut-il prendre comme original ?

Le plus ancien. Les lignes présentes seulement dans le second fichier sont signalées comme ajoutées et celles présentes seulement dans le premier comme supprimées : inverser les fichiers inverse donc ces deux listes, ainsi que les valeurs avant et après.

Puis-je comparer des colonnes de noms différents ?

Seules les colonnes qui portent le même en-tête dans les deux fichiers sont comparées, et chaque colonne clé doit avoir le même nom des deux côtés. Renommez d’abord les colonnes de l’un des fichiers avec Réorganiser les colonnes.

Normes et références