Comparaison d'une ligne sur Excel
hugo10270
-
hugo10270 -
hugo10270 -
Bonjour,
Je suis novice sur Excel et j'aimerai savoir s'il est possible de comparer une ligne contenant 3 nombres avec un millier d'autres ligne ( avec 3 nombres pareils )
Je ne veux pas qu'il trouve la même ligne vu qu'on n'a jamais les mêmes mais qu'il me donne la plus proche ( ou les plus proches ) en calculant pour les 3 nombres le pourcentage de différence.
Et que ensuite il me donne la ligne et me renvoie sur le commentaire correspondant à cette ligne.
Une idée ?
Je suis novice sur Excel et j'aimerai savoir s'il est possible de comparer une ligne contenant 3 nombres avec un millier d'autres ligne ( avec 3 nombres pareils )
Je ne veux pas qu'il trouve la même ligne vu qu'on n'a jamais les mêmes mais qu'il me donne la plus proche ( ou les plus proches ) en calculant pour les 3 nombres le pourcentage de différence.
Et que ensuite il me donne la ligne et me renvoie sur le commentaire correspondant à cette ligne.
Une idée ?
A voir également:
- Comparaison d'une ligne sur Excel
- Liste déroulante excel - Guide
- Partager photos en ligne - Guide
- Déplacer une colonne excel - Guide
- Formule somme excel ligne - Guide
- Word et excel gratuit - Guide
8 réponses
Alors en fait il y aurait 3 colonnes avec chacune un nombre. Mais dejà plusieurs centaines de lignes ( avec ces 3 colonnes ) et moi je veux quand rentrant ma ligne il me donne les lignes qui se rapproche le plus de celles dejà rentrer en tenant compte des 3 colonnes et si possible en me donnant l'écart ( pourcentage ) entre les 2 lignes...
C'est plus clair ou pas ?
C'est plus clair ou pas ?
Bonjour,
Alors le plus simple est de faire manuellement un exemple concret et de poster le fichier sur https://www.cjoint.com/ et poster le lien.
Alors le plus simple est de faire manuellement un exemple concret et de poster le fichier sur https://www.cjoint.com/ et poster le lien.
Bonjour hugo.
Je ne crois pas qu'on pourra arriver à un résultat intéressant :
Avec une seule colonne on pourrait opérer un tri ; avec 3 colonnes il te faudrait donner une priorité aux colonnes de référence ...
Je ne crois pas qu'on pourra arriver à un résultat intéressant :
Avec une seule colonne on pourrait opérer un tri ; avec 3 colonnes il te faudrait donner une priorité aux colonnes de référence ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
On pourrait juste pas lui demander de comparer : La Donnée 1 avec la Collone 1, La donnée 2 avec la Collone 2, la donnée 3 avec la collone 3. Et de donner par exemple un écart maxi pour les 3 collones de 1% et si il y a une ligne qui correspond à ce critère il nous la donne ?
Bonjour,
Il peut y avoir plusieurs manières de définir la ligne la plus proche...
Ici je fais la somme de 1-rapports et retourne la plus faible :
=EQUIV(MIN(ABS(1-(B2:B7)/$G$1)+ABS(1-(C2:C7)/$H$1)+ABS(1-(D2:D7)/$I$1));ABS(1-(B2:B7)/$G$1)+ABS(1-(C2:C7)/$H$1)+ABS(1-(D2:D7)/$I$1);0)
exemple
eric
Il peut y avoir plusieurs manières de définir la ligne la plus proche...
Ici je fais la somme de 1-rapports et retourne la plus faible :
=EQUIV(MIN(ABS(1-(B2:B7)/$G$1)+ABS(1-(C2:C7)/$H$1)+ABS(1-(D2:D7)/$I$1));ABS(1-(B2:B7)/$G$1)+ABS(1-(C2:C7)/$H$1)+ABS(1-(D2:D7)/$I$1);0)
exemple
eric
Et là il prend bien en compte les 3 données en même temps ? Et de la même manière ? Aucune n'est avantagé ( par exemple en fonction de lataille d'une donnée un écart de 10 dans la collone 2 n'est pas plus grand qu'un écart de 1 dans la 3
Est ce qu'il y a moyen de mettre le pourcentage de différence avec la ligne trouvé ?
Est ce qu'il y a moyen de mettre le pourcentage de différence avec la ligne trouvé ?
Re,
Et là il prend bien en compte les 3 données en même temps ? oui
Et de la même manière ? oui
Aucune n'est avantagé ( par exemple en fonction de lataille d'une donnée un écart de 10 dans la collone 2 n'est pas plus grand qu'un écart de 1 dans la 3 oui
Pour chaque colonne je fais le rapport Data1/valeur, si la valeur est exacte on obtient 1, sinon on s'en éloigne. Ensuite je fais ABS(1-rapport) pour avoir 0 sur valeur exacte, et plus si on s'éloigne.
A partir de là j'ai considéré que la plus petite somme des écarts était la ligne la plus proche.
Ceci dit...
J'ai voulu simplifier en pensant que le ratio était suffisant mais tu as raison, un contrôle sur les % apporte une autre réponse : la ligne 4.
Je t'ai donc ajouté cette formule en G7 :
=EQUIV(MIN(ABS((G$1-Data1)/Data1)+ABS((H$1-Data2)/Data2)+ABS((I$1-Data3)/Data3));ABS((G$1-Data1)/Data1)+ABS((H$1-Data2)/Data2)+ABS((I$1-Data3)/Data3);0)
Egalement formule matricielle à valider avec shift+ctrl+entrée (j'avais oublié de te le préciser sur la 1ère proposition)
Est ce qu'il y a moyen de mettre le pourcentage de différence avec la ligne trouvé ?
La ligne étant choisie tu peux afficher ce que tu veux vu que tu as tes 2 (6) valeurs à disposition.
Comment rajouter automatiquement la dernière ligne qu'on compare à la liste ?
Le plus simple est définir des plages dynamiques pour tes données.
Créer donc 3 noms pour alléger les formules : Data1, Data2 et Data3
Data1: =DECALER(Feuil1!$B$1;1;0;NBVAL(Feuil1!$B:$B)-1;1)
Même principe pour les 2 autres.
Et dans les formules remplacer les plages des données par leur nom.
Par contre on ne doit rien trouver d'autre que des valeurs à contrôler en B, C et D (à part les titres en ligne 1)
Pour insérer (ou consulter un nom sur excel 2003 : menu 'insertion / noms / définir...'
exemple
eric
Et là il prend bien en compte les 3 données en même temps ? oui
Et de la même manière ? oui
Aucune n'est avantagé ( par exemple en fonction de lataille d'une donnée un écart de 10 dans la collone 2 n'est pas plus grand qu'un écart de 1 dans la 3 oui
Pour chaque colonne je fais le rapport Data1/valeur, si la valeur est exacte on obtient 1, sinon on s'en éloigne. Ensuite je fais ABS(1-rapport) pour avoir 0 sur valeur exacte, et plus si on s'éloigne.
A partir de là j'ai considéré que la plus petite somme des écarts était la ligne la plus proche.
Ceci dit...
J'ai voulu simplifier en pensant que le ratio était suffisant mais tu as raison, un contrôle sur les % apporte une autre réponse : la ligne 4.
Je t'ai donc ajouté cette formule en G7 :
=EQUIV(MIN(ABS((G$1-Data1)/Data1)+ABS((H$1-Data2)/Data2)+ABS((I$1-Data3)/Data3));ABS((G$1-Data1)/Data1)+ABS((H$1-Data2)/Data2)+ABS((I$1-Data3)/Data3);0)
Egalement formule matricielle à valider avec shift+ctrl+entrée (j'avais oublié de te le préciser sur la 1ère proposition)
Est ce qu'il y a moyen de mettre le pourcentage de différence avec la ligne trouvé ?
La ligne étant choisie tu peux afficher ce que tu veux vu que tu as tes 2 (6) valeurs à disposition.
Comment rajouter automatiquement la dernière ligne qu'on compare à la liste ?
Le plus simple est définir des plages dynamiques pour tes données.
Créer donc 3 noms pour alléger les formules : Data1, Data2 et Data3
Data1: =DECALER(Feuil1!$B$1;1;0;NBVAL(Feuil1!$B:$B)-1;1)
Même principe pour les 2 autres.
Et dans les formules remplacer les plages des données par leur nom.
Par contre on ne doit rien trouver d'autre que des valeurs à contrôler en B, C et D (à part les titres en ligne 1)
Pour insérer (ou consulter un nom sur excel 2003 : menu 'insertion / noms / définir...'
exemple
eric
Ok ! j'avais compris la formule de départ mais je n'arrivais pas à la réécrire avec 4 colonne puisque je ne validais pas la formule matricielle...
J'arrive pas à comprendre la différence entre les 2 résultats puisqu'en ramenant les données à des pourcentages les rapport ne devrait pas changer...
Laquelle est la mieux ?
Comment appelle tu la colonne B, DATA 1 ? Est ce automatique ?
Enfin, j'ai pas tout suivi au rajout de la dernière ligne
J'arrive pas à comprendre la différence entre les 2 résultats puisqu'en ramenant les données à des pourcentages les rapport ne devrait pas changer...
Laquelle est la mieux ?
Comment appelle tu la colonne B, DATA 1 ? Est ce automatique ?
Enfin, j'ai pas tout suivi au rajout de la dernière ligne
Laquelle est la mieux ?
Ben celle qui te ramène le résultat que tu préfères...
Il n'y a jamais de réponse unique à : la ligne la plus proche. Tout dépend de tes critères, à toi de les fixer précisément.
Comment appelle tu la colonne B, DATA 1 ? Est ce automatique ?
C'est la ligne que tu n'as pas compris : Pour insérer (ou consulter )un nom sur excel 2003 : menu 'insertion / noms / définir...'
eric
Ben celle qui te ramène le résultat que tu préfères...
Il n'y a jamais de réponse unique à : la ligne la plus proche. Tout dépend de tes critères, à toi de les fixer précisément.
Comment appelle tu la colonne B, DATA 1 ? Est ce automatique ?
C'est la ligne que tu n'as pas compris : Pour insérer (ou consulter )un nom sur excel 2003 : menu 'insertion / noms / définir...'
eric