Cet article explique comment réparer ‘DataFormat.Error : nous n’avons pas pu convertir en nombre‘. Travailler avec des données dans Requête puissanteque ce soit dans Exceller ou Power BIpeut rationaliser l’analyse et le reporting. Cependant, les erreurs de conversion de type de données constituent une frustration courante à laquelle de nombreux utilisateurs sont confrontés, notamment lorsqu’ils traitent des formats incohérents.
Qu’il s’agisse de délimiteurs incompatibles, de types de données mixtes ou de paramètres régionaux, les problèmes peuvent amener Power Query à mal interpréter les données, entraînant une erreur de conversion qui se lit comme suit :
DataFormat.Error : nous n’avons pas pu convertir en nombre. Détails: [error_details]
Dans cet article, nous explorerons les causes profondes de l’erreur et proposerons des solutions pratiques pour résoudre le problème.
Correction de DataFormat.Error : nous n’avons pas pu convertir en nombre
Pour réparer DataFormat.Error, nous n’avons pas pu convertir en nombrelorsque vous travaillez avec des données dans Requête puissanteque ce soit dans Exceller ou Power BI utilisez ces solutions :
- Supprimer l’étape automatique « Modifier le type »
- Filtrer les valeurs non numériques
- Nettoyer et normaliser les données avant la conversion de type
- Définir manuellement les délimiteurs et les paramètres régionaux
- Corriger les séparateurs décimaux et de milliers
Voyons cela en détail.
1]Supprimez l’étape automatique « Modifier le type »
Power Query ajoute souvent automatiquement une étape « Modifier le type » après le chargement des données pour essayer d’attribuer des types de données aux colonnes en fonction des 1 000 premières lignes. Si vos données incluent des types incohérents, tels que des nombres mélangés à du texte dans la même colonne, cette étape automatique peut provoquer « DataFormat.Error : We could’t convert to Number ».
Pour résoudre ce problème, accédez au Données (dans Excel) et sélectionnez Obtenir des données > Lancer l’éditeur Power Query (dans Power BI, cliquez sur Transformer les données).
Sur le côté droit de la fenêtre de l’éditeur Power Query, vous verrez le Étapes appliquées vitre. S’il y a une étape appelée ‘Type modifié‘, Power Query a automatiquement attribué des types de données. Cliquez sur le X à côté de l’étape pour le supprimer. Cela empêchera Power Query de tenter des conversions automatiques.
Après avoir supprimé l’étape « Type modifié », définissez manuellement le type de données de chaque colonne pour vous assurer qu’il est correct.
2]Filtrer les valeurs non numériques
Les colonnes contenant à la fois du texte et des valeurs numériques (par exemple, « ABC 123 ») peuvent amener Power Query à tenter de tout convertir en nombre, conduisant à l’erreur ci-dessus. Vous pouvez faire plusieurs choses pour résoudre ce problème :
- Changez le type de données de la colonne en « Texte », utilisez le Remplacer les valeurs pour corriger l’entrée problématique, puis rétablir le type de données sur « Nombre décimal ».
- Utilisez le Diviser la colonne fonctionnalité pour diviser les données par un délimiteur. Appliquez ensuite le type de données « Nombre » à la colonne numérique et le type « Texte » à l’autre.
- Vous pouvez également filtrer les lignes contenant des valeurs non numériques (qui ne devraient pas être présentes) avant de convertir la colonne en type de données Nombre.
Après avoir filtré les valeurs non numériques, vous pouvez modifier en toute sécurité le type de données de la colonne d’origine.
3]Nettoyer et standardiser les données avant la conversion de type
Les données copiées à partir de sites Web ou d’autres sources peuvent inclure des espaces insécables ou des symboles tels que « & » ou « », qui confondent Power Query lors de la tentative de conversion ou de fusion de colonnes.
Appliquer le FAIRE LE MÉNAGE ou GARNITURE fonction à partir du Transformer menu pour supprimer ces caractères (la fonction TRIM supprime les espaces supplémentaires du texte, ne laissant que des espaces simples entre les mots, la fonction CLEAN supprime tous les caractères non imprimables et est particulièrement utile pour nettoyer les données importées de sources externes où des caractères masqués peuvent exister).
Après avoir appliqué ces fonctions, essayez à nouveau de définir le type de données de la colonne.
4]Définir manuellement les délimiteurs et les paramètres régionaux
Si vos données impliquent des paramètres régionaux, assurez-vous que Power Query utilise le délimiteur et les paramètres régionaux corrects. Par exemple, si vous travaillez avec des données européennes où des virgules sont utilisées comme séparateurs décimaux, définissez manuellement les paramètres régionaux des données en accédant à Fichier > Options > Options de requête > Paramètres régionaux et ajuster le Lieu pour correspondre à la source de données.
S’il s’agit d’une seule colonne, utilisez le Modifier le type > Utilisation des paramètres régionaux option pour garantir une conversion appropriée du type de données avec les paramètres régionaux corrects appliqués.
De même, pour les fichiers CSV, vérifiez si les données utilisent des virgules ou des points-virgules comme délimiteurs et ajustez cela manuellement lors de l’importation.
5]Corriger les séparateurs décimaux et de milliers
Enfin, si Power Query ne parvient pas à convertir les nombres en raison de points décimaux incompatibles et de séparateurs de milliers, utilisez l’option Remplacer les valeurs pour échanger le mauvais séparateur (par exemple, remplacez « . » par « », pour les données européennes) afin qu’il corresponde au format attendu.
C’est tout !
Lire: Comment diviser les données en lignes à l’aide de Power Query.
Comment résoudre l’erreur DataFormat que nous n’avons pas pu convertir en nombre ?
Assurez-vous que les colonnes avec lesquelles vous travaillez sont correctement formatées en « Texte » ou en « Nombre ». Lorsque vous rencontrez « DataFormat.Error : Nous n’avons pas pu convertir en nombre », consultez la section « Détails » du message d’erreur. Cela met souvent en évidence la valeur ou le caractère particulier que Power Query ne peut pas interpréter comme un nombre. Si une colonne contient à la fois du texte et des chiffres, divisez-la en colonnes distinctes, puis appliquez le type de données correct à la colonne numérique.
Pourquoi Excel ne me permet-il pas de convertir en nombre ?
Excel peut ne pas vous permettre de convertir des nombres stockés sous forme de texte en nombres si les cellules sont formatées en « Texte » ou si elles contiennent des caractères invisibles comme des espaces insécables ou des symboles spéciaux. Si l’une des cellules concernées est fusionnée, Excel peut restreindre certaines opérations telles que la conversion de nombres. Supprimez la fusion des cellules avant de tenter la conversion.
Lire ensuite : Power BI Impossible de se connecter. Nous avons rencontré une erreur lors de la tentative de connexion.