Nb.si.ens avec critères simultanés et conditionnels

Negarev

XLDnaute Nouveau
Bonjour,

Je suis loin d'être novice dans l'utilisation d'Excel, mais là j'aurais vraiment besoin d'un coup de main...

Voici mon souci : j'ai des clients qui arrivent à l'hôtel à une certaine heure un jour de la semaine. Selon leur heure d'arrivée, je dois leur affecter un vol. J'ai une table avec les horaires des vols et ma condition est donc :

Si les clients arrivent à l'hôtel entre 0 et 120 minutes après l'arrivée du vol, ils sont affectés à ce vol.

Jusqu'ici tout va bien.

Là où ça se corse c'est qu'il y a plusieurs vols par semaine provenant du même aéroport, et ces horaires changent selon la période de l'année (trois changement sur l'année considérée)

J'aimerais donc avoir un tableau qui récapitule :

- en colonne, la provenance des clients (l'aéroport)
- en ligne, la période considérée
- en données le nombre de clients qui sont arrivés de cet aéroport pendant la période considérée.

Mon souci est que, contrairement à un simple nb.si.ens, là j'ai plusieurs critères à vérifier : je dois vérifier pour chaque provenance le nombre de clients dont l'horaire d'arrivée correspond à la plage horaires de vols multiples. En plus ces critères sont conditionnels à l'aéroport et à la période considérée...

Donc soit je construit un tableau directement, mais là j'ai un problème de formule dans le sens où je serais obligé d'imbriquer un nombre pas possible de fonctions OU, soit j'affecte directement chaque client à un vol avec une fonction SOMMEPROD, mais j'avoue avoir beaucoup de mal avec cette fonction.

J'ai regardé partout et j'ai essayé d'adapter des formules conseillées dans des cas similaires, mais rien n'y fait.

Merci d'avance pour votre aide.

Negarev
 

Pièces jointes

  • base pour forum.xlsx
    54.4 KB · Affichages: 61

Dugenou

XLDnaute Barbatruc
Re : Nb.si.ens avec critères simultanés et conditionnels

Bonjour,
Peut-être avec une formule matricielle ?
=INDEX('Horaires des vols'!$E$1:$E$161;MIN(SI((V7>=deb)*(V7<=fin);(LIGNE(deb)))))
à valider avec ctrl+maj+enter : voir PJ
 

Pièces jointes

  • negarev vols.xlsx
    53.9 KB · Affichages: 68
  • negarev vols.xlsx
    53.9 KB · Affichages: 78
  • negarev vols.xlsx
    53.9 KB · Affichages: 78

Negarev

XLDnaute Nouveau
Re : Nb.si.ens avec critères simultanés et conditionnels

Waw, ça marche, merci beaucoup Dugenou !

Est-ce que tu saurais par hasard comment faire pour que la formule filtre les heures de départ et d'arrivée par période ? Par exemple, si la période dans la colonne D de l'onglet "Données" est "Période 1", alors la formule ne cherche que dans les vols où le libellé de la période (colonne F dans l'onglet "Horaires des vols") est "Période 1" ?

En tout cas chapeau ! Jamais je ne serais arrivé à ce résultat sans aide ! Est-ce que tu pourrais aussi m'expliquer la formule ?

Merci encore :)
 

Dugenou

XLDnaute Barbatruc
Re : Nb.si.ens avec critères simultanés et conditionnels

Re,
Oui, il suffit de rajouter une condition sous la forme : *('Horaires des vols'!$F$2:$F$161=Données!D7)

Code:
=INDEX('Horaires des vols'!$E$1:$E$161;MIN(SI((V7>=deb)*(V7<=fin)*('Horaires des vols'!$F$2:$F$161=Données!D7);(LIGNE(deb)))))
toujours en matriciel
voir PJ : j'ai collé des valeurs période au hasard dans la feuille de données car la formule se réfère à un autre fichier
Explication : SI((V7>=deb)*(V7<=fin)*('Horaires des vols'!$F$2:$F$161=Données!D7);(LIGNE(deb)) permet de créer un tableau virtuel (une matrice) qui contient soit le N° de ligne de la plage deb quand la condition est vraie (quand chaque terme de la multiplication est VRAI) soit FAUX (on a pas spécifié la valeur si faux dans le SI).
MIN de cette expression va renvoyer le premier N° de ligne qui correspond (FAUX étant considéré comme une valeur > à un chiffre)
Index permettra de renvoyer la valeur souhaitée (note : l'index doit commencer en ligne 1 car le N° renvoyé par la formule est un N° de ligne)
Cordialement
 

Pièces jointes

  • negarev vols.xlsx
    53.9 KB · Affichages: 52
  • negarev vols.xlsx
    53.9 KB · Affichages: 62
  • negarev vols.xlsx
    53.9 KB · Affichages: 64

Discussions similaires

Statistiques des forums

Discussions
312 236
Messages
2 086 477
Membres
103 230
dernier inscrit
herve42000