N’ouvrez pas le fichier d’un double-clic. Dans Excel, choisissez Données > À partir du texte/CSV, sélectionnez le fichier, vérifiez l’encodage (Origine du fichier) et le Délimiteur dans l’aperçu, puis cliquez sur Transformer les données. Dans Power Query, supprimez l’étape automatique Type modifié, passez les colonnes d’identifiants, de codes et de téléphones en Texte, donnez leur type aux colonnes numériques et cliquez sur Fermer et charger. Pour vous passer de tout réglage d’importation, convertissez d’abord le CSV en XLSX avec des cellules texte.
Vérifier le fichier avant de l’importer
Une importation se passe bien quand on connaît trois choses : le caractère qui sépare les colonnes, l’encodage dans lequel le texte a été enregistré, et les colonnes qui contiennent des identifiants plutôt que des quantités. La visionneuse CSV et le validateur CSV montrent les trois sans rien modifier.
| Séparateur | En France, en Belgique ou en Suisse, les exports utilisent souvent le point-virgule, puisque la virgule y sert de séparateur décimal. Les exports anglo-saxons utilisent plutôt la virgule. On rencontre aussi la tabulation et la barre verticale. |
|---|---|
| Encodage | La plupart des exports récents sont en UTF-8. Les anciens logiciels Windows écrivent souvent en Windows-1252 (proche d’ISO-8859-1). Un mauvais choix affiche é au lieu de é, par exemple « référence ». |
| Ligne d’en-tête | Vérifiez que la première ligne contient les noms de colonnes et qu’aucun titre de rapport ni aucune ligne vide ne se trouve au-dessus. |
| Colonnes à protéger | Repérez toutes les colonnes d’identifiants, de codes, de numéros de téléphone, de codes postaux ou de valeurs de plus de 15 chiffres (références de commande, numéros de carte ou de compte). Elles doivent être de type Texte. |
Importer avec « À partir du texte/CSV » (Power Query)
C’est l’importation standard dans Excel pour Microsoft 365 et les versions récentes d’Excel pour Windows ; les versions d’Excel pour Mac dotées de Power Query fonctionnent de façon similaire. Les noms de menus peuvent légèrement varier selon la version.
- Dans l’onglet Données, cliquez sur À partir du texte/CSV (dans certaines versions Obtenir des données > À partir d’un fichier > À partir du texte/CSV) et choisissez le fichier.
- Dans l’aperçu, réglez Origine du fichier sur l’encodage du fichier, par exemple 65001 : Unicode (UTF-8), puis le Délimiteur. Les accents doivent s’afficher correctement et chaque valeur doit être dans sa propre colonne.
- Cliquez sur Transformer les données, pas sur Charger : un chargement direct applique la détection de types d’Excel, qui peut déjà arrondir les longs identifiants.
- Dans l’éditeur Power Query, regardez la liste Étapes appliquées. Excel ajoute en général En-têtes promus (première ligne utilisée comme noms de colonnes) et Type modifié. Supprimez Type modifié avec la croix à côté.
- Sélectionnez les colonnes d’identifiants, de codes et de téléphones puis, dans l’onglet Transformer, réglez Type de données sur Texte. Sans l’étape numérique, elles passent en texte directement depuis le fichier d’origine.
- Donnez aux colonnes qui servent aux calculs le type Nombre entier, Nombre décimal ou Date. Pour des nombres écrits avec une virgule décimale, utilisez Type de données > Utilisation des paramètres régionaux et choisissez la langue et la région dans lesquelles le fichier a été produit, par exemple Français (France).
- Cliquez sur Accueil > Fermer et charger.
Certaines versions affichent aussi une liste Détection du type de données dans le premier aperçu. L’option Ne pas détecter les types de données charge toutes les colonnes en texte, ce qui protège les identifiants ; il ne reste ensuite qu’à typer les colonnes numériques.
Importer avec l’ancien Assistant Importation de texte
L’ancien assistant demande le format de chaque colonne dès le départ. Dans Excel pour Microsoft 365 sous Windows, il est masqué par défaut : activez À partir du texte (hérité) parmi les assistants d’importation de données hérités, dans les options de données d’Excel, puis lancez-le depuis Données > Obtenir des données > Assistants hérités > À partir du texte (hérité). Les versions plus anciennes proposent Fichier texte directement dans l’onglet Données, et Excel pour Mac ouvre un assistant similaire lorsque vous importez un fichier texte. Les intitulés exacts varient selon la version.
- Étape 1 : choisissez Délimité, réglez Origine du fichier sur l’encodage et cochez Mes données ont des en-têtes si la première ligne contient les noms de colonnes.
- Étape 2 : cochez le séparateur (Virgule, Point-virgule, Tabulation ou Autre) et contrôlez l’aperçu.
- Étape 3 : dans l’aperçu, sélectionnez chaque colonne à protéger et réglez Format des données en colonne sur Texte. Laissez les colonnes numériques en Standard, ou choisissez Date avec le bon ordre, par exemple JMA.
- Cliquez sur Terminer et choisissez où placer les données.
Comme Power Query, l’assistant fixe le type avant qu’une valeur n’arrive dans une cellule : c’est pour cela qu’il protège les longs identifiants, alors qu’une mise en forme appliquée après coup ne le fait pas.
Se passer des réglages d’importation : convertir d’abord en XLSX
Si les destinataires du fichier ne doivent pas avoir à faire tout cela, envoyez-leur un classeur plutôt qu’un CSV. Le convertisseur CSV vers Excel lit le CSV dans votre navigateur, sans l’envoyer sur un serveur, et écrit par défaut chaque valeur dans une cellule texte Excel : Excel n’a plus rien à deviner.
- Ouvrez le CSV dans le convertisseur CSV vers Excel. Si les colonnes sont mal découpées, réglez le séparateur ou l’encodage dans Paramètres d’importation.
- Pour du texte à largeur fixe, plusieurs séparateurs à la fois ou des lignes de rapport au-dessus de l’en-tête, utilisez Importer du texte… : découpez par séparateurs, par largeurs fixes ou selon un motif, ignorez les premières lignes, vérifiez l’aperçu et cliquez sur Importer.
- Gardez Tout garder en texte pour les fichiers contenant des identifiants et des codes. Détecter les nombres et true/false transforme en nombres les colonnes de nombres simples ; lisez d’abord comment cette option traite les numéros de téléphone et les codes avec un E.
- Cliquez sur Télécharger en XLSX et ouvrez le classeur dans Excel.
Essayez avec le fichier d’exemple : il contient des zéros en tête, des identifiants à 20 chiffres, un code qui ressemble à une date et une remarque qui ressemble à une formule.
Résoudre les problèmes d’importation courants
- Tout se retrouve dans la colonne A. Le séparateur est mauvais. Choisissez le bon dans l’aperçu, ou dans Paramètres d’importation de ViewCSV.
- Les accents s’affichent comme
éou?. L’encodage est mauvais. Essayez d’abord UTF-8, puis Windows-1252 ou ISO-8859-15. - Les noms de colonnes sont dans la première ligne de données. Utilisez Utiliser la première ligne pour les en-têtes dans Power Query, ou cochez Mes données ont des en-têtes dans l’assistant.
- Le jour et le mois sont inversés dans les dates. Importez la colonne en Texte, ou définissez son type avec les paramètres régionaux du fichier, par exemple Anglais (États-Unis) pour un export américain.
- Les longs identifiants finissent par des zéros. Ils ont été convertis avant le passage en Texte. Supprimez l’importation et recommencez à partir du CSV d’origine ; voici pourquoi les chiffres ne sont pas récupérables.
- Les nombres ne s’additionnent pas. Ils ont été importés en texte. Passez la colonne à un type numérique dans Power Query, ou utilisez Convertir en nombre dans Excel.
Avant de partager le résultat
Réenregistrer la feuille en CSV fait disparaître les types, et la prochaine personne qui l’ouvre d’un double-clic retombe sur les mêmes problèmes. Partagez le classeur, ou envoyez le CSV avec ces étapes d’importation. Le convertisseur ViewCSV accepte des fichiers jusqu’à 25 Mo, 100 000 lignes, 250 colonnes et 2 millions de cellules ; découpez les fichiers plus gros au préalable.
Sources
Documentation Microsoft, résumée avec nos propres mots. Les noms de menus peuvent différer dans votre version d’Excel.