Comprendre le JSON et son importance
Le JSON est un format de données léger et largement utilisé pour l'échange de données entre serveurs et applications web. Sa structure, basée sur des paires clé-valeur, le rend facile à lire et à parser par les machines. Il est devenu un standard de facto pour les API web et les configurations.
Pourquoi convertir JSON en Excel ?
Bien que le JSON soit excellent pour le stockage et le transport de données, il n'est pas toujours idéal pour l'analyse et la visualisation. Excel, en revanche, offre:
- Une interface conviviale : Facile à utiliser pour les utilisateurs non techniques.
- Des outils d'analyse puissants : Tableaux croisés dynamiques, filtres, tris, etc.
- Des capacités de visualisation : Graphiques et diagrammes pour présenter les données.
- Des fonctionnalités de calcul : Formules pour effectuer des opérations complexes.
Méthodes pour convertir JSON en Excel
Il existe plusieurs façons de convertir un fichier JSON en Excel, chacune ayant ses avantages et ses inconvénients. Voici les principales méthodes:
1. Utiliser Power Query (Obtenir et transformer des données)
Power Query est un outil intégré à Excel (depuis Excel 2010 sous forme d'add-in et intégré depuis Excel 2016) qui permet d'importer et de transformer des données provenant de diverses sources, y compris les fichiers JSON. C'est la méthode recommandée pour les fichiers JSON complexes ou nécessitant une transformation.
Étape 1 : Importer le fichier JSON
- Ouvrez Excel.
- Allez dans l'onglet Données.
- Cliquez sur Obtenir des données (ou Nouvelle requête dans les versions antérieures).
- Sélectionnez À partir d'un fichier puis À partir d'un fichier JSON.
- Sélectionnez le fichier JSON que vous souhaitez importer.
Étape 2 : Naviguer dans la structure JSON
Power Query affichera un aperçu de la structure JSON. Si le fichier JSON contient un tableau d'objets, Power Query le détectera automatiquement. Sinon, vous devrez peut-être naviguer dans les différents niveaux de l'arborescence JSON.
- Si le JSON contient un tableau : Cliquez sur le lien "Tableau" pour afficher les données sous forme de tableau.
- Si le JSON contient des objets imbriqués : Cliquez sur le lien "Enregistrement" pour explorer les propriétés de l'objet.
Étape 3 : Transformer les données
Power Query offre de nombreuses options pour transformer les données. Vous pouvez:
- Développer les colonnes : Si un champ contient un objet imbriqué, vous pouvez développer les colonnes pour afficher les propriétés de l'objet.
- Filtrer les lignes : Supprimer les lignes qui ne sont pas pertinentes.
- Modifier le type de données : Assurez-vous que les colonnes ont le type de données approprié (texte, nombre, date, etc.).
- Renommer les colonnes : Donner des noms significatifs aux colonnes.
Étape 4 : Charger les données dans Excel
Une fois que vous avez transformé les données, cliquez sur Fermer et charger pour les importer dans une feuille Excel.
Exemple pratique :
Supposons que vous ayez un fichier JSON contenant une liste de produits:
[
{
"id": 1,
"name": "Produit A",
"price": 25.99,
"category": "Electronique"
},
{
"id": 2,
"name": "Produit B",
"price": 12.50,
"category": "Alimentaire"
}
]
En utilisant Power Query, vous importerez ce fichier, et Excel créera un tableau avec les colonnes "id", "name", "price" et "category". Vous pourrez ensuite trier, filtrer et analyser ces données.
2. Utiliser VBA (Visual Basic for Applications)
VBA est le langage de programmation intégré à Excel. Il permet d'automatiser des tâches et d'étendre les fonctionnalités d'Excel. Vous pouvez utiliser VBA pour écrire un script qui lit un fichier JSON et l'importe dans une feuille Excel.
Avantages :
- Flexibilité : Vous avez un contrôle total sur le processus d'importation.
- Automatisation : Vous pouvez automatiser l'importation de fichiers JSON récurrents.
Inconvénients :
- Complexité : Nécessite des connaissances en programmation VBA.
- Maintenance : Le code VBA peut nécessiter une maintenance si la structure du fichier JSON change.
Exemple de code VBA :
Sub ImportJson()
Dim JsonFile As String, JsonText As String
Dim Json As Object, Item As Object
Dim i As Long, LastRow As Long
JsonFile = Application.GetOpenFilename("Fichiers JSON (*.json), *.json")
If JsonFile = "False" Then Exit Sub
Open JsonFile For Input As #1
JsonText = Input(LOF(1), 1)
Close #1
Set Json = JsonConverter.ParseJson(JsonText)
LastRow = ThisWorkbook.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row + 1
i = LastRow
For Each Item In Json
ThisWorkbook.Sheets(1).Cells(i, 1).Value = Item("id")
ThisWorkbook.Sheets(1).Cells(i, 2).Value = Item("name")
ThisWorkbook.Sheets(1).Cells(i, 3).Value = Item("price")
ThisWorkbook.Sheets(1).Cells(i, 4).Value = Item("category")
i = i + 1
Next Item
MsgBox "Importation terminée !"
End Sub
Explication du code :
Application.GetOpenFilename: Ouvre une boîte de dialogue pour sélectionner le fichier JSON.Open JsonFile For Input As #1: Ouvre le fichier JSON en lecture.JsonText = Input(LOF(1), 1): Lit le contenu du fichier JSON.Set Json = JsonConverter.ParseJson(JsonText): Parse le JSON en utilisant la librairieJsonConverter(voir ci-dessous comment l'installer).For Each Item In Json: Parcourt chaque élément du tableau JSON.ThisWorkbook.Sheets(1).Cells(i, 1).Value = Item("id"): Écrit les valeurs des propriétés "id", "name", "price" et "category" dans les cellules correspondantes de la feuille Excel.
Installation de la librairie JsonConverter :
- Dans l'éditeur VBA (Alt + F11).
- Allez dans Outils > Références…
- Cochez la case Microsoft Scripting Runtime.
- Téléchargez et importez le module
JsonConverter.bas(disponible sur GitHub ou via une recherche Google) dans votre projet VBA (Fichier > Importer un fichier).
Comment utiliser le code :
- Ouvrez l'éditeur VBA (Alt + F11).
- Insérez un nouveau module (Insertion > Module).
- Collez le code VBA dans le module.
- Exécutez la macro
ImportJson(F5 ou Exécution > Exécuter Sub/UserForm).
3. Utiliser des convertisseurs en ligne
De nombreux convertisseurs en ligne permettent de convertir un fichier JSON en Excel. Ces outils sont généralement gratuits et faciles à utiliser, mais ils peuvent avoir des limitations en termes de taille de fichier, de confidentialité des données et de fonctionnalités de transformation.
Exemples de convertisseurs en ligne :
- Convertio : https://convertio.co/fr/json-xls/
- OnlineConvertFree : https://onlineconvertfree.com/fr/convert/json-to-xls/
- FreeConvert : https://www.freeconvert.com/fr/json-to-excel
Comment utiliser un convertisseur en ligne :
- Rendez-vous sur le site web du convertisseur.
- Téléchargez votre fichier JSON.
- Sélectionnez le format de sortie (Excel).
- Cliquez sur le bouton de conversion.
- Téléchargez le fichier Excel converti.
Conseils :
- Vérifiez la réputation du convertisseur en ligne avant de l'utiliser.
- Ne téléchargez pas de fichiers JSON contenant des informations sensibles.
- Assurez-vous que le convertisseur prend en charge la structure de votre fichier JSON.
4. Utiliser des outils tiers (applications et bibliothèques)
Il existe également des outils tiers, des applications et des bibliothèques, qui peuvent être utilisés pour convertir des fichiers JSON en Excel. Ces outils offrent généralement des fonctionnalités plus avancées que les convertisseurs en ligne, mais ils peuvent être payants ou nécessiter des compétences techniques.
Exemples d'outils tiers :
- JSON Editor Online : Un éditeur JSON en ligne avec une option d'exportation vers Excel.
- Bibliothèques Python (pandas) : Si vous êtes familier avec Python, vous pouvez utiliser la bibliothèque
pandaspour lire un fichier JSON et l'exporter vers Excel.
Bonnes pratiques et erreurs à éviter
Bonnes pratiques
- Validez votre JSON : Assurez-vous que votre fichier JSON est valide avant de l'importer dans Excel. Vous pouvez utiliser des validateurs JSON en ligne pour vérifier sa syntaxe.
- Nettoyez vos données : Avant de convertir votre JSON en Excel, nettoyez vos données pour supprimer les erreurs et les incohérences.
- Choisissez la méthode appropriée : Sélectionnez la méthode de conversion qui convient le mieux à la taille, à la complexité et à la sensibilité de vos données.
- Automatisez le processus : Si vous devez convertir des fichiers JSON en Excel régulièrement, automatisez le processus à l'aide de VBA ou d'un outil tiers.
Erreurs à éviter
- Ignorer les erreurs de syntaxe JSON : Les erreurs de syntaxe dans le fichier JSON peuvent empêcher l'importation des données.
- Importer des fichiers JSON trop volumineux : Les fichiers JSON trop volumineux peuvent ralentir Excel ou même le faire planter.
- Ne pas vérifier la structure du JSON : Avant d'importer le JSON, vérifiez sa structure pour vous assurer que les données seront importées correctement.
- Utiliser des convertisseurs en ligne non fiables : Les convertisseurs en ligne non fiables peuvent compromettre la confidentialité de vos données.
Conclusion
La conversion de JSON en Excel est une tâche courante qui peut être réalisée de différentes manières. Power Query, VBA, les convertisseurs en ligne et les outils tiers offrent tous des solutions viables, chacune avec ses avantages et ses inconvénients. En choisissant la méthode appropriée et en suivant les bonnes pratiques, vous pouvez facilement transformer vos données JSON en tableaux Excel exploitables, vous permettant ainsi de les analyser, de les visualiser et de les partager efficacement.