Tableau croisé dynamique Excel 2013 refusant de résumer des valeurs identiques - renvoie les résultats en double. Pourquoi?

0

J'ai rencontré un problème étrange lors de la création d'un tableau croisé dynamique simple dans Excel. Voici mes données: j'ai créé un tableau simple avec la colonne C contenant les valeurs dans A divisées par celles de B. J'ai inclus la formule dans la colonne D juste pour être parfaitement clair.

entrez la description de l'image ici

Maintenant, voici la chose étrange - lorsque je construis un tableau croisé dynamique à partir de la colonne C, je reçois deux versions du nombre 6:

entrez la description de l'image ici

C'est fou! Pourquoi Excel n'a-t-il pas agrégé les deux «versions» du chiffre 6 sur une seule ligne? J'ai fait d'autres tests: isnumber () retourne vrai pour les 6, et même le test d'équivalence (= ' 1st 6 ' = ' 2nd 6 ') retourne vrai aussi! Pourquoi Excel ne parvient-il pas à résumer ces valeurs identiques dans le tableau croisé dynamique?

Je suppose que cela a quelque chose à voir avec 1.2 / 0.2 renvoyant un float et 12/2 renvoyant un entier (comme cela pourrait arriver en python), mais rien dans Excel ne me dit quels types de données je traite. Une erreur d'arrondi peut-être? Et si les deux 6 ne sont pas identiques, pourquoi mon test d’équivalence est-il vrai?

Si je convertis les deux 6 en nombres entiers, le tableau croisé dynamique renvoie les résultats attendus. Cependant, je ne crois pas que je devrais le faire, et la plupart des utilisateurs ne s'y attendaient pas non plus. Que se passe t-il ici? Comportement attendu, ou bug?

JT_Edin
la source
vous avez déjà la réponse, elle est liée à l'arrondi (peut-être que 1.2 / 0.2 l'est 6.0..01, mais est simplement affiché comme 6et aussi arrondi lorsque vous effectuez des calculs avec. C'est limite d'être un bug, mais de toute façon je ne pense pas que nous puissions fournir Si vous avez des questions, Microsoft vous répondra dans les plus
brefs délais

Réponses:

1

Si vous convertissez la colonne C en un entier à l'aide d'une INTfonction, le tableau croisé dynamique génère comme vous le souhaitez. C'est une question flottante.

entrez la description de l'image ici

entrez la description de l'image ici

Soleil
la source
Merci. Ce qui est déroutant, c’est qu’Excel «masque» certains problèmes d’arrondi (c’est pourquoi il renvoie VRAI lorsque l’on lui demande si l’un des 6 = l’autre). Si vous évaluez = INT (1.2 / 0.2) dans la feuille de calcul, vous obtiendrez "6". Essayez toutefois cela dans la fenêtre Immédiat (? INT (1.2 / 0.2)) et il en retournera 5. En bref, Excel ne gère pas cette bizarrerie de manière particulièrement élégante, et ne donne aucune indication à l'utilisateur sur ce qui se passe. .
JT_Edin