Le format CSV est un standard utilisé pour échanger des données structurées entre des entreprises ou différentes applications logicielles. Il repose sur du texte et utilise des signes de ponctuation comme séparateurs de colonnes.

Voici un exemple de données contenues dans un fichier CSV :

firstName, lastName, email
Joe, Vaughn, vaugh@hotmail.com
Bob, Cunnighan, bobc@gmail.com

La plupart des outils qui traitent des données permettent d’exporter des fichiers CSV, notamment les CRM, les systèmes de gestion des commandes, les tableurs comme Google Sheets ou Microsoft Excel et les logiciels financiers. À l’avenir, nous disposerons peut-être de modèles de données unifiés pour transférer des éléments structurés d’une application à une autre. En attendant, nous devons nous appuyer sur les fichiers CSV.

Pour fusionner deux fichiers CSV à partir d’une colonne commune, importez le premier fichier, définissez la colonne de correspondance comme unique, puis importez le second fichier dans la même collection en choisissant une option de fusion. La collection obtenue conserve les lignes d’origine et y ajoute les valeurs correspondantes du second fichier. Par exemple, fusionnez customers.csv (Email, Name) avec jobs.csv (Email, Job Title) en utilisant la colonne Email : si l’adresse e-mail d’un client correspond, son Job Title est ajouté à sa ligne sans créer de doublon.

Pour manipuler des fichiers CSV, le premier réflexe consiste généralement à utiliser un tableur. Ouvrir un fichier CSV dans Google Sheets ou Microsoft Excel est très simple. Ces outils montrent toutefois leurs limites pour deux opérations courantes :

Si vous souhaitez uniquement comparer deux exports CSV afin d’identifier les lignes ajoutées, supprimées ou modifiées, utilisez plutôt le CSV Diff Tool.

Lors d’une opération de jointure, une colonne commune sert à combiner des données provenant de plusieurs sources. Les tableurs ne permettent pas d’appliquer une contrainte d’unicité à une colonne : leurs possibilités restent donc limitées pour fusionner ou dédupliquer des fichiers CSV.

Ce guide comporte deux parties :

Dans ce tutoriel, nous utilisons deux fichiers CSV de démonstration :

Solution 1 : fusionner des fichiers CSV sur une colonne commune avec Datablist

La manipulation de données est simple avec Datablist. Voyons comment fusionner des fichiers CSV grâce à un identifiant unique. Pour commencer, ouvrez Datablist sans créer de compte.

Étape 1 : importer votre premier fichier CSV

Commencez par créer une collection destinée à accueillir toutes vos données CSV. Cliquez sur le bouton + dans la barre latérale pour créer une collection.

Une fois celle-ci créée, accédez à la section « Import CSV ».

Créer une collection

Remarque : la première ligne de votre fichier CSV doit contenir le nom des colonnes.

Glissez-déposez un fichier CSV ou cliquez pour le sélectionner sur votre ordinateur. Une fois le fichier chargé, vérifiez que le nombre de lignes et de colonnes affiché dans l’aperçu est correct avant de passer à l’étape suivante.

Associez les colonnes de votre CSV aux propriétés de la collection ou créez de nouvelles propriétés.

Enfin, cliquez sur le bouton « Import » pour lancer l’importation. Votre premier fichier CSV est désormais importé !

Importer votre premier fichier CSV

Étape 2 : choisir la colonne servant d’identifiant unique

Maintenant que votre premier fichier CSV est importé, vous pouvez appliquer une contrainte de valeurs uniques à l’une des propriétés de la collection. Datablist s’appuiera alors sur cette information pour fusionner les prochains imports CSV tout en respectant la contrainte. Ouvrez la configuration des colonnes, puis modifiez la propriété qui servira d’identifiant unique. Cochez l’attribut « Unique Values » et enregistrez.

Appliquer une contrainte de valeurs uniques à une propriété

Étape 3 : importer un ou plusieurs fichiers CSV

Après avoir défini une contrainte d’unicité sur une propriété de la collection, importez un à un vos autres fichiers CSV dans cette même collection. Si nécessaire, créez de nouvelles propriétés lors de l’étape d’association des colonnes.

Lorsque votre collection contient déjà des éléments et qu’une contrainte d’unicité est active, l’outil d’importation vous permet de sélectionner un type de jointure et un mode de fusion. Choisissez Import only matching rows si vous souhaitez enrichir uniquement les clients déjà présents dans la collection. Choisissez Import all rows and match when possible si les lignes sans correspondance du nouveau fichier doivent être ajoutées en tant que nouveaux éléments.

Mode de fusion
Mode de fusion

Sélectionnez la façon dont les données doivent être fusionnées dans la collection :

  • Soft Merge : renseigne les propriétés vides de l’élément correspondant, sans remplacer les valeurs existantes. Choisissez cette option si le premier fichier doit rester la source de référence.
  • Hard Merge : remplace les valeurs existantes par celles de la ligne correspondante dans le nouveau fichier. Choisissez cette option si le second fichier contient des données plus récentes.

Attention : l’option « Skip item » ignore la ligne lorsqu’une entrée possédant le même identifiant existe déjà dans la collection. Elle ne doit pas être sélectionnée pour fusionner des fichiers CSV.

Vérifiez l’aperçu avant de lancer l’importation. Dans chaque fichier, la propriété Email doit être associée à la même propriété de la collection. Les identifiants vides ne permettent pas d’établir des correspondances fiables. Quant aux identifiants en double dans un fichier source, ils doivent être vérifiés avant d’être utilisés comme clé unique. Après l’importation, contrôlez quelques adresses e-mail correspondantes et assurez-vous que le Job Title attendu apparaît bien sur la ligne existante.

Options de fusion des CSV
Options de fusion des CSV

Étape 4 : exporter le résultat au format CSV

Félicitations ! 🎉 Vous avez fusionné vos fichiers CSV à partir d’une colonne commune. Si vous devez exploiter le résultat dans un autre outil, cliquez sur le bouton « Export » pour exporter la collection dans un nouveau fichier CSV.

Export CSV
Export CSV

Tutoriel vidéo complet pour fusionner des fichiers CSV avec Datablist

Dans la vidéo ci-dessous, le paramètre « unique values » est activé directement lors de la création de la propriété.

Fusionner des fichiers CSV sur une colonne unique avec Datablist

Solution 2 : fusionner des fichiers CSV avec Google Sheets ou Microsoft Excel

Les tableurs offrent des possibilités limitées pour fusionner des fichiers CSV à partir d’une colonne commune. Une formule peut néanmoins rechercher dans un autre tableau la ligne correspondant à une valeur. Appliquée à chaque ligne du tableau principal, elle permet de parcourir un autre tableau et de renvoyer la valeur de n’importe quelle colonne de la ligne correspondante.

Cette formule est VLOOKUP. Elle est disponible dans Microsoft Excel et Google Sheets.

Limites

  • Avec un tableur, un fichier CSV sert de tableau principal et doit contenir toutes les valeurs possibles de la colonne de jointure.
  • Dans tous les tableaux secondaires, la colonne de jointure doit être placée en première position.

Étape 1 : importer vos fichiers CSV

Remarque : dans ce tutoriel, nous utilisons Google Sheets. La formule VLOOKUP fonctionne de manière similaire dans Microsoft Excel.

Parmi vos fichiers CSV, choisissez celui qui contient le plus de valeurs : il servira de tableau principal. Les autres seront considérés comme des fichiers CSV secondaires.

Commencez par importer votre fichier CSV principal via File -> Import, puis sélectionnez votre fichier. Accédez à l’onglet Upload pour choisir un fichier CSV stocké sur votre ordinateur.

Dans Import Location, sélectionnez Insert new sheet(s).

Importer un fichier CSV dans Google Sheets
Importer un fichier CSV dans Google Sheets

Répétez l’opération pour vos fichiers CSV secondaires. Chaque fichier CSV doit être importé dans un onglet distinct du tableur.

Fichiers CSV importés dans Google Sheets
Fichiers CSV importés dans Google Sheets

Étape 2 : créer des colonnes dans la feuille principale

Le tableau contenant votre fichier CSV principal recevra les valeurs issues des autres tableaux. Dans ce tableau principal, créez de nouvelles colonnes afin d’accueillir les données provenant de vos autres fichiers.

Dans ce tutoriel, nous souhaitons récupérer la donnée Job Title du tableau secondaire dans le tableau principal. Nous ajoutons donc une colonne Job Title vide.

Nouvelle colonne Job Title
Nouvelle colonne Job Title

Étape 3 : placer la colonne unique en première position dans les tableaux secondaires

La formule VLOOKUP effectue sa recherche dans la première colonne du tableau ciblé. Dans tous vos tableaux secondaires — cette opération est inutile dans le tableau principal — déplacez en première position la colonne qui servira de clé de jointure.

La colonne d’identifiant doit être placée en première position
La colonne d’identifiant doit être placée en première position

Étape 3 : utiliser la formule VLOOKUP

La dernière étape consiste à utiliser la formule VLOOKUP pour rechercher les lignes correspondantes dans les autres tableaux et afficher une colonne de la ligne trouvée.

La formule accepte quatre arguments. Le dernier détermine si la recherche porte sur des données triées :

  • search_key - La valeur à rechercher. Il s’agit de l’identifiant unique de la ligne.;
  • range - La plage dans laquelle effectuer la recherche. La clé indiquée dans search_key est recherchée dans la première colonne de cette plage. Sélectionnez l’ensemble du tableau secondaire comme plage de recherche (voir la vidéo).
  • index - Le numéro de la colonne dont la valeur doit être renvoyée. La première colonne de la plage porte le numéro 1.
  • is_sorted - [TRUE par défaut] - Indique si la colonne parcourue — la première de la plage définie — est triée. FALSE est recommandé dans la plupart des cas. Si vous choisissez True alors que vos données ne sont pas triées, les résultats seront incorrects !
VLOOKUP(search_key, range, index, [is_sorted])

Regardez la vidéo ci-dessous pour découvrir comment utiliser VLOOKUP afin de fusionner des données à partir d’une colonne unique :

Fusionner des fichiers CSV sur une colonne unique avec Google Sheets

Consultez la documentation Google Sheets pour en savoir plus sur la formule VLOOKUP.

Répétez l’opération pour chaque autre colonne de vos tableaux secondaires 💪.