Sortir les deux dernières valeurs colonnes - Libreoffice

Résolu/Fermé
Ooinn - 21 août 2020 à 08:55
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 - 24 août 2020 à 13:23
Bonjour,

Je bloque sur un problème depuis 2 semaines ...

Je fais des mesures qui définissent un stade "crise" en fonction des deux dernières mesures réalisées.

J'essaie d'automatiser au maximum le tableau et donc que ces deux dernières valeurs ressortent sur deux lignes différentes. Les données sont prises deux jours par semaine donc en moyenne une ligne sur deux est vide ...

J'ai essayé avec des formules à base d'EQUIV et de DECALER. Mais cela bloque dans certains cas particuliers : par exemple si l'une des deux dernières valeurs a déjà été atteinte plus tôt ou si les deux dernières sont égales ...

Exemples de données :
A B
01/07
02/07 314
08/07
09/07 168
15/07 206
16/07
22/07
23/07 119
29/07
30/07 214
05/08 183
06/08
12/08
13/08 141
19/08
20/08 128

Les données sorties doivent être :
Dernière valeur = 128
Valeur précédente = 141

J'utilise actuellement un truc immonde à base de test SI DECALER-2 non vide, alors prendre DECALER-2, puis -3, -4, etc. ...
"SI(DECALER(B18;EQUIV(MAX($A$18:$A$124);$A18:$A124;0)-2;0)<>"";DECALER(B18;EQUIV(MAX($A$18:$A$124);$A18:$A124;0)-2;0)

Mais du coup cette formule donne de mauvais résultats si valeurs atteintes plusieurs fois...

Merci par avance de votre aide =)

Yannick
Configuration: Windows / Firefox 60.0
A voir également:

3 réponses

tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
21 août 2020 à 15:16
Bonjour,
Dans une colonne auxiliaire C numéroter les mesures avec la formule en C2
=SI(NB.SI(B2:$B$1000;B2)>0;MAX($C$1:C1)+1;0) recopiée vers le bas

dernière valeur : =INDEX(B2:C1000;EQUIV(MAX(C2:C1000);C2:C1000;0);1)
avant dernière valeur : =INDEX(B2:C1000;EQUIV(MAX(C2:C1000)-1;C2:C1000;0);1)
0
Bonjour,

J'avais pas pensé à passer par une numérotation des données, merci beaucoup, ça marche au top !

Bonne journée
0
Si cela intéresse, j'ai un poil simplifié la formule =SI(NB.SI(B2:$B$1000;B2)>0;MAX($C$1:C1)+1;0)

=>

=SI(B2<>"";MAX($C$1:C1)+1;0) à glisser vers le bas
0
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
24 août 2020 à 13:23
Bonjour,
C' est vrai que j'ai "pomper" paresseusement le premier exemple de numérotation que j'ai trouvé sur mon grenier.
Vous pouvez cliquer "résolu" en haut du message initial. Merci et bonne route.
0