Microsoft 365 Des bugs dans excel ?

Amanite

XLDnaute Nouveau
Bonjour.

J'ai une question d'ordre général sur le fonctionnement d'excel, car parfois je me demande s'il tourne rond..

Est-il possible que les fonctions ou formules déraillent ? Car certaines fois, des formules simples qui devraient fonctionner ne le font pas, apparemment sans raison.

Mon exemple du jour :

- je compare deux cellules. Si elles sont identiques, le résultat doit afficher A, sinon B. Simple, non ?
- et bien, elles ont beau être strictement identiques, excel affiche un résultat comme si elles étaient différentes. Inutile de préciser que j'ai vérifié la syntaxe, l'orthographe et le format des cellules à comparer. Je n'y comprends rien et le problème est insoluble.

Comment est-ce possible ?

Je vous mets le fichier ci-joint : le problème est, par exemple, dans la cellule D3 (entourée d'une bordure rouge) : les lignes "Product" qui ont des variantes (fond jaune) doivent récapituler les options des variantes de ce Produit, mais en n'affichant bien sûr qu'une seule fois chaque option. Pour cela, je compare chaque ligne avec le statut "Product" ou "Variant" (je vérifie sur les 27 prochaines lignes, mon produit ayant le plus de variantes en possédant 27), puis chaque option avec la ligne qui la précède : si la cellule précédente est identique, alors l'option n'est pas reprise dans le récapitulatif fond jaune.

Alors pourtant que mes formules comparent les gris chiné des lignes 12 à 16 avec une formule du type SI(C11<>C12;";"&C12;""), mon gris chiné apparaît deux fois. Sans raison puisque la formule devrait l'en empêcher.

Ce "bug" intervient plus de 50 fois dans mon fichier complet (qui comprend 2000 lignes), apparemment dès qu'il y a plus de 3 occurrences d'une même option (mais pas toujours : l'article 3 - bordures vertes - ne pose aucun problème alors qu'il a encore plus d'options...)

Je suis sur Microsoft 365 pour Windows.

Merci de m'avoir lu.
 

Pièces jointes

  • Bug comparaison.xlsx
    38.8 KB · Affichages: 22

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Il est rare que les formules buguent ou alors sur des trucs plus subtiles (calculs avec un énorme nombre de chiffres après la virgule, etc)

Utiliser un tableau structuré pour ce genre d'opération est fortement déconseillé, les formules se répetant inutilement sur toutes les lignes.

Ce genre de formule est du genre imbuvable et ne peut être que source d'erreurs et de ralentissements.
Il y a d'autres moyens surtout avec excel 365.

Dans le fichier joint vous trouverez en feuille 'PowerQuery" une requête qui vous fait le job.

D'ailleurs vous avez d'autres requêtes, dont nous n'avons pas les sources. Mais certainement que celle que je vous ai faite, pourrait y être intégrée.

Cordialement
 

Pièces jointes

  • Bug comparaison.xlsx
    45 KB · Affichages: 2
Dernière édition:

JHA

XLDnaute Barbatruc
Bonjour à tous,

Je n'ai pas analysé ta formule à rallonge mais ci-joint un exemple par TCD qui regroupe les "productOptionType14" par article.
Excel a l'air de trouver ces types facilement, il y a donc certainement une erreur dans cette formule.

JHA
 

Pièces jointes

  • Bug comparaison.xlsx
    40.1 KB · Affichages: 3

chris

XLDnaute Barbatruc
Bonjour à tous

On fait souvent ici des joutes "à qui aura la formule la plus courte" mais je c'est la 1ère fois que je vois une formule de cette taille.

Je vais faire un vœu, lol

Je dis toujours en cours Excel qu'au delà de 3 niveaux d'imbrication on peut rechercher une autre solution et au delà de 5, il faut trouver une autre approche.

Il y a bien une erreur dans la formule (au moins une !)
VB:
SI(ET(B15="Variant";D15<>D9);";"&D15;""))

devrait être
SI(ET(B15="Variant";D15<>D16);";"&D15;""))

Ici outre la mauvaise approche, il y a un bug de conception : on ne devrait pas chercher plus de variants qu'il n'y en a dans le tableau pour un produit et donc border la formule.
 
Dernière édition:

Discussions similaires

Réponses
4
Affichages
277

Statistiques des forums

Discussions
311 725
Messages
2 081 944
Membres
101 849
dernier inscrit
florentMIG