Comment créer une recherche multicritère ?
Résolu/Fermé
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
-
Modifié par Strumpfette le 13/01/2016 à 16:29
ymike - 18 janv. 2016 à 17:05
ymike - 18 janv. 2016 à 17:05
A voir également:
- Comment créer une recherche multicritère ?
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un compte gmail - Guide
- Créer une adresse hotmail - Guide
- Comment créer une story sur facebook - Guide
5 réponses
jordane45
Messages postés
38369
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 janvier 2025
4 722
12 janv. 2016 à 11:51
12 janv. 2016 à 11:51
Bonjour,
Je n'ai pas la possibilité d'accéder au fichier ...
Pourrais tu nous indiquer sur quoi tu travailles ? ( quel logiciel de BDD ? )
Access ? Mysql ? SqlServer ? Oracle ? autre ?
Tu parles de "formule" ... hors... avec les bases de données... on parle de requêtes !
Ne serais tu pas sur Excel ???? ... si oui ... je déplacerait ta question dans la bonne section du forum.
Merci.
Je n'ai pas la possibilité d'accéder au fichier ...
Pourrais tu nous indiquer sur quoi tu travailles ? ( quel logiciel de BDD ? )
Access ? Mysql ? SqlServer ? Oracle ? autre ?
Tu parles de "formule" ... hors... avec les bases de données... on parle de requêtes !
Ne serais tu pas sur Excel ???? ... si oui ... je déplacerait ta question dans la bonne section du forum.
Merci.
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
12 janv. 2016 à 18:04
12 janv. 2016 à 18:04
bonjour
Dans excel tu peux faire un tri sur decroissant dans la colonne prix
Dans excel tu peux faire un tri sur decroissant dans la colonne prix
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
13 janv. 2016 à 08:12
13 janv. 2016 à 08:12
Bonjour,
Ce que je souhaite c'est d'avoir un affichage automatique dans 2 cellules :
dans la première le tarif le moins cher et dans la seconde le transporteur correspondant à ce tarif.
Exemple :
Je rentre ce que je sais
A1 = département de Départ
B1 = Type de véhicule
C1 = département de destination
D1 = métrage
Je cherche à faire afficher
E1 = formule pour le tarif le moins cher ?
F1 = formule pour le transporteur correspondant au tarif le moins cher ?
Il s'agit en fait de recherche multicritères justement pour éviter d'avoir à chaque fois à faire tous les filtres et les tris.
Ce que je souhaite c'est d'avoir un affichage automatique dans 2 cellules :
dans la première le tarif le moins cher et dans la seconde le transporteur correspondant à ce tarif.
Exemple :
Je rentre ce que je sais
A1 = département de Départ
B1 = Type de véhicule
C1 = département de destination
D1 = métrage
Je cherche à faire afficher
E1 = formule pour le tarif le moins cher ?
F1 = formule pour le transporteur correspondant au tarif le moins cher ?
Il s'agit en fait de recherche multicritères justement pour éviter d'avoir à chaque fois à faire tous les filtres et les tris.
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
13 janv. 2016 à 10:44
13 janv. 2016 à 10:44
Bonjour
sous toute réserve de réactivité du fichier dont Michel fait très justement état avec des formules matricielles:
pour la valeur min d'après votre tableau:
=MIN(SI(A:A&C:C&D:D=50&"B"&70;DECALER(A1;;EQUIV(3;2:2;0)-1;1000)))
pour la valeur min d'après votre tableau:
formule matricielle à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées. Elle doit se retrouver entre accolades dans la barre de formule.
et ensuite pour trouver le nom du transporteur, une formule normale avec l'adresse de la cellule contenant la formule précédente:
=INDEX(B:B;EQUIV(cell;DECALER(A1;;EQUIV(3;2:2;0)-1;1000);0))
formule qui, comme le signale aussi l'ami Michel qui a encore raison, ne vous renverra que le premier trouvé dans le tableau en ca d'ex-aequo.
bien sur les valeurs 50,B,70 et cell sont à remplacer par les rèf des cellules contenant ces valeurs
a essayer, mais probablement bien trop lourd si vous avez un tableau de 6000 lignes à remplir
sous toute réserve de réactivité du fichier dont Michel fait très justement état avec des formules matricielles:
pour la valeur min d'après votre tableau:
=MIN(SI(A:A&C:C&D:D=50&"B"&70;DECALER(A1;;EQUIV(3;2:2;0)-1;1000)))
pour la valeur min d'après votre tableau:
formule matricielle à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées. Elle doit se retrouver entre accolades dans la barre de formule.
et ensuite pour trouver le nom du transporteur, une formule normale avec l'adresse de la cellule contenant la formule précédente:
=INDEX(B:B;EQUIV(cell;DECALER(A1;;EQUIV(3;2:2;0)-1;1000);0))
formule qui, comme le signale aussi l'ami Michel qui a encore raison, ne vous renverra que le premier trouvé dans le tableau en ca d'ex-aequo.
bien sur les valeurs 50,B,70 et cell sont à remplacer par les rèf des cellules contenant ces valeurs
a essayer, mais probablement bien trop lourd si vous avez un tableau de 6000 lignes à remplir
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
13 janv. 2016 à 12:25
13 janv. 2016 à 12:25
Bonjour à tous,
je viens de tester sur plus de 8000 lignes avec une matricielle beaucoup plus compliquée que celle de Vaucluse et la réponse est instantanée.
La tienne, Vaucluse présente un léger temps de réaction qui disparaît quand on supprime les colonnes entières.
ça donne
=MIN(SI(A3:A8327&C3:C8327&D3:D8327=50&"B"&70;DECALER(A3;;EQUIV(3;A2:AE2;0)-1;8325)))
cordialement
je viens de tester sur plus de 8000 lignes avec une matricielle beaucoup plus compliquée que celle de Vaucluse et la réponse est instantanée.
La tienne, Vaucluse présente un léger temps de réaction qui disparaît quand on supprime les colonnes entières.
ça donne
=MIN(SI(A3:A8327&C3:C8327&D3:D8327=50&"B"&70;DECALER(A3;;EQUIV(3;A2:AE2;0)-1;8325)))
cordialement
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 419
13 janv. 2016 à 12:37
13 janv. 2016 à 12:37
Salut JvDo
et merci pour le test, mais il me reste quand même un doute. La formule fonctionne bien sur une ligne. Je crains toutefois que le demandeur veuille ressortir les résultats ligne par ligne sur un tableau de 6000 lignes, c'est à dire 6000 fois la formule!
(on pourrait par contre alors limiter les champs à la ligne 800 si le tableau base de données est complet dans le modèle transmis)
Je pense que c'est ce que Michel à compris et il a sans doute raison!
Bien cordialement
et merci pour le test, mais il me reste quand même un doute. La formule fonctionne bien sur une ligne. Je crains toutefois que le demandeur veuille ressortir les résultats ligne par ligne sur un tableau de 6000 lignes, c'est à dire 6000 fois la formule!
(on pourrait par contre alors limiter les champs à la ligne 800 si le tableau base de données est complet dans le modèle transmis)
Je pense que c'est ce que Michel à compris et il a sans doute raison!
Bien cordialement
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
>
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
13 janv. 2016 à 12:53
13 janv. 2016 à 12:53
effectivement,
ouille ouille, ça pique les yeux quand on recopie la formule sur 8 300 cellules : 1'05" de recalcul sur mon PC de compet d'il y a 5 ans.
le temps réel n'a qu'à bien se tenir !!
cordialement
ouille ouille, ça pique les yeux quand on recopie la formule sur 8 300 cellules : 1'05" de recalcul sur mon PC de compet d'il y a 5 ans.
le temps réel n'a qu'à bien se tenir !!
cordialement
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
13 janv. 2016 à 09:57
13 janv. 2016 à 09:57
Bonjour
On pourrait trouver avec une formule matricielle mais avec 6000 lignes j'ai peur que le temps de réponse soit très lent;il faudrait donc passer par du VBA
sinon, que se passe t'il si tu as >=2 transporteurs qui ont le m^me tarif ?
On pourrait trouver avec une formule matricielle mais avec 6000 lignes j'ai peur que le temps de réponse soit très lent;il faudrait donc passer par du VBA
sinon, que se passe t'il si tu as >=2 transporteurs qui ont le m^me tarif ?
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
13 janv. 2016 à 10:47
13 janv. 2016 à 10:47
Le VBA dépasse mes capacités ... pour l'instant.
Effectivement c'est une bonne question si plusieurs transporteurs ont le même tarif le choix se fait alors par consultation.
De ce que je comprends, j'ai peur de devoir investir dans un logiciel type TMS (Transport Management System) ... ou de me former à la VBA ...
Effectivement c'est une bonne question si plusieurs transporteurs ont le même tarif le choix se fait alors par consultation.
De ce que je comprends, j'ai peur de devoir investir dans un logiciel type TMS (Transport Management System) ... ou de me former à la VBA ...
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
>
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
Modifié par michel_m le 13/01/2016 à 11:33
Modifié par michel_m le 13/01/2016 à 11:33
Ok, on va passer quand m^me par du VBA vu le nombre de lignes et les potentiels exæquos
on envoie sur toute la France métropolitaine (Corse comprise) ?
On part que des département 50 et 60?
liste des types de camions: B, P...?
sois patient.
on envoie sur toute la France métropolitaine (Corse comprise) ?
On part que des département 50 et 60?
liste des types de camions: B, P...?
sois patient.
PHILOU10120
Messages postés
6394
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
2 janvier 2025
811
Modifié par PHILOU10120 le 13/01/2016 à 12:29
Modifié par PHILOU10120 le 13/01/2016 à 12:29
Bonjour
Une idée de fichier mais il y a surement plus simple
http://www.cjoint.com/c/FAnlxzVtIRx
La base feuil2 doit être triée colonne A du plus petit au plus grand et colonne C idem
C'est en forgeant que l'on devient forgeron. - C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
Une idée de fichier mais il y a surement plus simple
http://www.cjoint.com/c/FAnlxzVtIRx
La base feuil2 doit être triée colonne A du plus petit au plus grand et colonne C idem
C'est en forgeant que l'on devient forgeron. - C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
13 janv. 2016 à 16:34
13 janv. 2016 à 16:34
Bonjour
Le lien a été crée : https://www.cjoint.com/c/FAnpF7MRsXF
Dans ce lien ton fichier excel trié sur les 2 colonnes mentionnés en utilisant l'outil de tri d'excel
Le lien a été crée : https://www.cjoint.com/c/FAnpF7MRsXF
Dans ce lien ton fichier excel trié sur les 2 colonnes mentionnés en utilisant l'outil de tri d'excel
ymike
>
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
18 janv. 2016 à 17:05
18 janv. 2016 à 17:05
CASTOURS ET PHILOU VOUS AVEZ RESOLU MON PROBLEME !!! j'ai adapté les formules à mon tableau et ça fonctionne !!
un grand merci.
un grand merci.
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
13 janv. 2016 à 17:01
13 janv. 2016 à 17:01
Bonjour Philou,
ça fonctionne !
C'est vrai qu'il est intéressant pour moi d'avoir la liste des transporteurs avec une mise en forme conditionnelle mettant en valeur le prix le plus bas, car parfois, je ne sélectionne pas le moins cher (problème qualité ...).
Je vais essayer d'adapter tout ça à mon tableau de 6000 lignes ... affaire à suivre.
Merci.
ça fonctionne !
C'est vrai qu'il est intéressant pour moi d'avoir la liste des transporteurs avec une mise en forme conditionnelle mettant en valeur le prix le plus bas, car parfois, je ne sélectionne pas le moins cher (problème qualité ...).
Je vais essayer d'adapter tout ça à mon tableau de 6000 lignes ... affaire à suivre.
Merci.
castours
Messages postés
2955
Date d'inscription
lundi 18 septembre 2006
Statut
Membre
Dernière intervention
31 août 2019
217
>
ymike
Messages postés
7
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
13 janvier 2016
13 janv. 2016 à 18:02
13 janv. 2016 à 18:02
bonjour
est ce ma solution?
est ce ma solution?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
PHILOU10120
Messages postés
6394
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
2 janvier 2025
811
13 janv. 2016 à 18:50
13 janv. 2016 à 18:50
Bonjour
Le fichier avec une modification sur le type de véhicule à fin d'éviter la sélection d'un code absent.
http://www.cjoint.com/c/FAnrYiZt7wx
Le fichier avec une modification sur le type de véhicule à fin d'éviter la sélection d'un code absent.
http://www.cjoint.com/c/FAnrYiZt7wx
12 janv. 2016 à 11:58
C'est la première fois que j'utilise le forum
Effectivement je suis sur Excel.
12 janv. 2016 à 12:16
J'ai déplacé ta question.
Bonne journée.
12 janv. 2016 à 13:57