Mettre en évidence le maximum de chaque série
Fermé
eZula
Messages postés
3391
Date d'inscription
samedi 26 avril 2008
Statut
Contributeur
Dernière intervention
8 mai 2021
-
30 mars 2017 à 13:58
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 31 mars 2017 à 09:40
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 31 mars 2017 à 09:40
A voir également:
- Mettre en évidence le maximum de chaque série
- Retrouver ordinateur volé avec numéro de série - Guide
- Comment regarder la série erkenci kuş en français ✓ - Forum Cinéma / Télé
- Serie des années 70-80 en streaming gratuit - Forum Téléviseurs
- Télécharger idm gratuitement sans numéro de série - Télécharger - Téléchargement & Transfert
- Telecharger série merlin en français - Forum Cinéma / Télé
5 réponses
eZula
Messages postés
3391
Date d'inscription
samedi 26 avril 2008
Statut
Contributeur
Dernière intervention
8 mai 2021
392
Modifié le 22 juin 2018 à 16:03
Modifié le 22 juin 2018 à 16:03
En fait ça fonctionne, je me suis planté avec la fonction
=$AO2=MAX(SI($V$2:$V$1000=$V2;$AN$2:$AO$1000)
j'ai mis la valeur 2 pensant que cela concernait la deuxième ligne du tableau, la première étant constituée d'en-têtes. Il faut bien mettre 1 comme proposé.
Cela n'a manifestement rien à voir
Serait-il possible à ce propos d'avoir une explicitation de cette formule ? Cela m'aiderait à mieux comprendre
Merci en tout cas pour cette aide concluante.
Je ne mets pas encore résolu car j'aurais peut être encore une ou deux questions. Je fais qques essais et reviens dans pas longtemps.
Bonne journée
Edit:
Pour déterminer les individus qui sont disponibles à ce jour, soit ceux dont la dernière date de fin de contrat est inférieure à aujourd'hui, il suffit d'entrer dans la formule de MFC + mise en couleur de son choix :
=ET($AR2=MAX(SI($W$2:$W$1000=$W2;SI($AR$2:$AR$1000<AUJOURDHUI();$AR$2:$AR$1000)));SOMMEPROD(($W$2:$W$1000=W2)*($AQ$2:$AQ$1000<=AUJOURDHUI())*($AR$2:$AR$1000>=AUJOURDHUI()))=0)
Considérant les colonnes suivantes dans n'importe quel tableau :
AR = date de fin de contrat au format JJ/MM/AAAA
AQ = date de début de contrat au format JJ/MM/AAAA
W = Matricule (chaque agent a son propre matricule)
pour chaque matricule, la plage correspondante à toutes les périodes est balayée. Le dernier contrat est mis en forme en couleur si la date la plus récente est inférieure à aujourd'hui.
=$AO2=MAX(SI($V$2:$V$1000=$V2;$AN$2:$AO$1000)
j'ai mis la valeur 2 pensant que cela concernait la deuxième ligne du tableau, la première étant constituée d'en-têtes. Il faut bien mettre 1 comme proposé.
Cela n'a manifestement rien à voir
Serait-il possible à ce propos d'avoir une explicitation de cette formule ? Cela m'aiderait à mieux comprendre
Merci en tout cas pour cette aide concluante.
Je ne mets pas encore résolu car j'aurais peut être encore une ou deux questions. Je fais qques essais et reviens dans pas longtemps.
Bonne journée
Edit:
Pour déterminer les individus qui sont disponibles à ce jour, soit ceux dont la dernière date de fin de contrat est inférieure à aujourd'hui, il suffit d'entrer dans la formule de MFC + mise en couleur de son choix :
=ET($AR2=MAX(SI($W$2:$W$1000=$W2;SI($AR$2:$AR$1000<AUJOURDHUI();$AR$2:$AR$1000)));SOMMEPROD(($W$2:$W$1000=W2)*($AQ$2:$AQ$1000<=AUJOURDHUI())*($AR$2:$AR$1000>=AUJOURDHUI()))=0)
Considérant les colonnes suivantes dans n'importe quel tableau :
AR = date de fin de contrat au format JJ/MM/AAAA
AQ = date de début de contrat au format JJ/MM/AAAA
W = Matricule (chaque agent a son propre matricule)
pour chaque matricule, la plage correspondante à toutes les périodes est balayée. Le dernier contrat est mis en forme en couleur si la date la plus récente est inférieure à aujourd'hui.
Fahora
Messages postés
814
Date d'inscription
jeudi 24 septembre 2015
Statut
Membre
Dernière intervention
2 janvier 2023
68
30 mars 2017 à 14:21
30 mars 2017 à 14:21
Bonjour ,
En utilisant la fonction MAX.SI si votre excel est récent (version 2016).
Sinon :
=MAX(SI(A1:A5="Dupont";D1:D5;""))
ATTENTION : Ceci est une formule matricielle : à valider en appuyant simultanément sur Ctrl Shift et Enter
Cordialement,
En utilisant la fonction MAX.SI si votre excel est récent (version 2016).
Sinon :
=MAX(SI(A1:A5="Dupont";D1:D5;""))
ATTENTION : Ceci est une formule matricielle : à valider en appuyant simultanément sur Ctrl Shift et Enter
Cordialement,
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 418
30 mars 2017 à 14:23
30 mars 2017 à 14:23
Bonjour
voyez ici, à adapter
https://mon-partage.fr/f/wudifs8i/
crdlmnt
voyez ici, à adapter
https://mon-partage.fr/f/wudifs8i/
crdlmnt
eZula
Messages postés
3391
Date d'inscription
samedi 26 avril 2008
Statut
Contributeur
Dernière intervention
8 mai 2021
392
30 mars 2017 à 16:05
30 mars 2017 à 16:05
Bonjour,
merci pour vos réponses.
Les plages étant amenées à évoluer (ajout de lignes au fur et à mesure) j'ai choisi et adapté la deuxième solution. Néanmoins on dirait qu'il y a 2 problèmes :
- seules les avant dernières dates sont mises en surbrillance, et non pas les dernières, exemple : 15/02/2017 est surligné au lieu de 12/04/2017
- certains noms ont plusieurs dates sélectionnées, par exemple :
31/08/2016 23/10/2016
24/10/2016 07/05/2017
=> pour DUPONT
08/03/2017 29/03/2017
30/03/2017 26/04/2017
=> pour BLANC
Dans mon tableau la date de fin est la colonne AO, la colonne "NOM" est la colonne V et la colonne date de début est AN
D'où l'adaptation :
=$AO2=MAX(SI($V$2:$V$500=$V2;$AN$2:$AO$1000)
J'ai mis 1000 car le tableau fait actuellement 650 lignes et évoluera.
Je n'ai pas fait la même chose pour la colonne date de début : fallait-il ?
Merci
merci pour vos réponses.
Les plages étant amenées à évoluer (ajout de lignes au fur et à mesure) j'ai choisi et adapté la deuxième solution. Néanmoins on dirait qu'il y a 2 problèmes :
- seules les avant dernières dates sont mises en surbrillance, et non pas les dernières, exemple : 15/02/2017 est surligné au lieu de 12/04/2017
- certains noms ont plusieurs dates sélectionnées, par exemple :
31/08/2016 23/10/2016
24/10/2016 07/05/2017
=> pour DUPONT
08/03/2017 29/03/2017
30/03/2017 26/04/2017
=> pour BLANC
Dans mon tableau la date de fin est la colonne AO, la colonne "NOM" est la colonne V et la colonne date de début est AN
D'où l'adaptation :
=$AO2=MAX(SI($V$2:$V$500=$V2;$AN$2:$AO$1000)
J'ai mis 1000 car le tableau fait actuellement 650 lignes et évoluera.
Je n'ai pas fait la même chose pour la colonne date de début : fallait-il ?
Merci
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 418
Modifié le 30 mars 2017 à 16:43
Modifié le 30 mars 2017 à 16:43
Re
https://mon-partage.fr
et revenez ici (ou en privé si vous préférez) coller le lien créé sur le site
crdlmnt
- je ne vois pas le problème que vous évoquez du moins pas dans mon exemple.S'il subsiste, déposez un modèle de vos infos ici:
https://mon-partage.fr
et revenez ici (ou en privé si vous préférez) coller le lien créé sur le site
- Pour la colonne début, il n'est pas utile de placer une MFC si vous êtes sur que la date maxi pour chaque nom est bien dans l'autre colonne (j'ai proposé les deux options au cas où), mais ça c'est vous qui savez
- dans votre formule veillez à ce que les champ en V et AO aient bien la même hauteur (un à 500 l'autre à 1000)
- si votre MFC ne s'adresse qu'à la colonne O, limitez le champ de dates considérées à AO2:AO1000, chercher dans AN n'est pas utile
crdlmnt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 418
Modifié le 31 mars 2017 à 09:41
Modifié le 31 mars 2017 à 09:41
Alors petite explication
vous pouvez placer la formule dans une cellule pour voir ce qui se passe, mais sans l'égalité du début:
=MAX(SI($V$2:$V$1000=$V2;$AN$2:$AO$1000))
cette formule est matricielle par défaut dans une MFC, mais pas dans une cellule
elle doit donc alors être entrée avec la touche enter en maintenant les touches ctrl et shift enfoncées. Elle s'affiche automatiquement entre accolades dans la barre de formule
Elle est matricielle car elle analyse la page ligne par ligne
SI($V$2:$V$1000=$V2
détecte les lignes de V qui contiennent la valeur (texte ou num) de V2
MAX(.........;$AN$2:$AO$2000)
compare toutes les valeurs de la plage, mais uniquement sur les lignes détectées précédemment pour en ressortir la valeur maximum.
C'est aussi simple que ça
Vous pouvez donc, par exemple, avec cette formule, faire un tableau avec la liste exhaustive des noms de la colonne V et en face, tirer cette formule sur la hauteur de la liste pour avoir la date au plus tard pour chacun des noms
(Dans la MFC, en complément elle se rapporte à une égalité entre une cellule de la plage et le max trouvé =AO2=.......)
crdlmnt
vous pouvez placer la formule dans une cellule pour voir ce qui se passe, mais sans l'égalité du début:
=MAX(SI($V$2:$V$1000=$V2;$AN$2:$AO$1000))
cette formule est matricielle par défaut dans une MFC, mais pas dans une cellule
elle doit donc alors être entrée avec la touche enter en maintenant les touches ctrl et shift enfoncées. Elle s'affiche automatiquement entre accolades dans la barre de formule
Elle est matricielle car elle analyse la page ligne par ligne
SI($V$2:$V$1000=$V2
détecte les lignes de V qui contiennent la valeur (texte ou num) de V2
MAX(.........;$AN$2:$AO$2000)
compare toutes les valeurs de la plage, mais uniquement sur les lignes détectées précédemment pour en ressortir la valeur maximum.
C'est aussi simple que ça
Vous pouvez donc, par exemple, avec cette formule, faire un tableau avec la liste exhaustive des noms de la colonne V et en face, tirer cette formule sur la hauteur de la liste pour avoir la date au plus tard pour chacun des noms
(Dans la MFC, en complément elle se rapporte à une égalité entre une cellule de la plage et le max trouvé =AO2=.......)
crdlmnt