Compter différemment les valeurs consécutives (critère: <61 ou >60)

Aloha

XLDnaute Accro
Bonjour,

Comment construire une formule qui compte les valeurs d'un groupe consécutif en entier jusqu'à 60 et à moitié au-dessus de 60?

Voir l'exemple joint qui est, je le pense, assez éloquent.

Merci pour toute aide.

Aloha
 

Pièces jointes

  • Valeurs comptées différemment.xls
    14 KB · Affichages: 148
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonjour Aloha,

le probléme rencontré est le suivant:
les groupes sont-ils toujours de taille identique.......... ce qui m'étonnerait

au cas où ........... avec la formule suivante: =60+(SOMME(B3:B6)-60)/2

à+
Phiippe
.
 

JNP

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Aloha Aloha :),
Désolé de te décevoir, mais ton exemple n'est pas du tout éloquent :
3 en janvier, c'est 1, 2 et 3 janvier ou 29, 30 et 31 janvier (voir 1, 15 et 31...) ?
Sans cette information capitale, aucun moyen de savoir si les jours sont consécutifs. De même, 28 en février, 2010 ou 2012 ? Si c'est 2012, il en manque 1 :p...
Tout cela pour dire qu'une formule éventuelle, ne tiendrait pas compte des bonnes données, et donc, indiquerait un résultat très aléatoire...
Retravaille la base de la saisie des informations, pour que celles-ci soient représentatives, et là, on pourra t'aider ;).
Bonne soirée :cool:
Ajout : Salut PhLaurent
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonjour,

Pas évident de bien comprendre.

Dans ton exemple, on a 2 "groupes" de valeurs.

Combien peut-il y en avoir maxi ?

Si on se limite à 2, on peut parvenir à isoler les 2 groupes "assez" facilement. Si plus, ça risque de devenir plus ardu.

A te (re)lire

@+
 

Aloha

XLDnaute Accro
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonsoir,

Merci à vous pour vos réponses.

Désolé, je le pensais éloquent!

Quelques précisions:

Les dates n'importent pas (de toute façon il n'y a pas de dates dans les données); il faut juste considérer les nombres de jours du mois respectif (la seule donnée "donnée").
Le nombre de mois consécutifs peut varier, ainsi que le nombre de groupes.

L'année est toujours la même.

Espérant que le problème est plus compréhensible à présent...

A+

Aloha
 

hoerwind

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonjour, salut phlaurent55, JNP et Tibo,

Une fois n'est pas coutume, je crois avoir compris !

La formule en C15 était déjà suffisamment longue, et elle le sera encore plus s'il y a plus de deux groupes (facile à étendre), j'ai retenu l'option d'une colonne intermédiaire pour séparer les groupes.

Dis-nous si je n'ai pas été trop optimiste en disant avoir compris !
 

Pièces jointes

  • ValeursComptéesDifféremment.zip
    3.6 KB · Affichages: 92

Aloha

XLDnaute Accro
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonsoir "hoerwind",

Cela marche mais j'ai du mal à comprendre la formule; voilä pourquoi je ne comprends pas non plus comment l'étendre s'il y a un 3e groupe.

En réfléchissant bien, j'ai compris qu'un seul chiffre ne suffit en réalité pas (mes excuses): ce serait mieux que, à l'intérieur d'un groupe, les jours des mois situés au-dessus de la limite de 60 soit directement comptés correctement pour le mois respectif, d'après le critère, donc à moitié à partir du 61e jour.

A cette intention j'ai ajouté une colonne dans l'exemple


A+ Aloha
 

Pièces jointes

  • ValeursComptéesDifféremment.xls
    24 KB · Affichages: 118

hoerwind

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Re,

La formule dit ceci :

Pour le 1er groupe (1 en colonne A) :
Additionner le minimum (MIN) de la somme du groupe (SOMME.SI) et de 60 à la moitié du maximum (MAX) du solde de ce groupe (SOMME.SI - 60) et de 0 (afin d'éviter les valeurs négatives).

Pour le 2ème groupe (2 en colonne A) :
Idem que pour le 1er groupe, mais avec un condition préliminaire qui vérifie si le nombre 2 existe en colonne A.

pour le 3ème groupe (3 en colonne A) :
Idem que pour le 2ème groupe, mais en modifiant les 2 par des 3 (trois fois)

La formule répond à ta demande et renvoie le bon résultat.
 

ROGER2327

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonsoir à tous
Une proposition de fonction personnalisée :
Code:
[COLOR="DarkSlateGray"][B]Function ValSeuil(plg As Range, seuil As Double) As Double
Dim i As Long, s As Double
   Application.Volatile
   i = 1
   Do While i <= plg.Rows.Count
      s = 0
      Do While IsEmpty(plg.Cells(i, 1)) And i <= plg.Rows.Count
         i = i + 1
      Loop
      Do While Not IsEmpty(plg.Cells(i, 1)) And i <= plg.Rows.Count
         If IsNumeric(plg.Cells(i, 1)) Then
            s = s + plg.Cells(i, 1).Value
            i = i + 1
         Else
            i = i + 1
            Exit Do
         End If
      Loop
      ValSeuil = ValSeuil + WorksheetFunction.Min(s, seuil) - (s > seuil) * (s - seuil) / 2
   Loop
End Function[/B][/COLOR]
Le premier argument est une plage unicolonne de cellules, le deuxième argument est le seuil.

Dans l'exemple du classeur, on écrira en C15 :
Code:
[COLOR="DarkSlateGray"][B]=ValSeuil(C3:C14;60)[/B][/COLOR]
pour obtenir 107.5.​
ROGER2327
#2642
 

Aloha

XLDnaute Accro
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonjour "Roger2327",

Merci beaucoup pour la peine que tu t'es donnée.

Cependant, je suis finalement à la recherche de formules pour les différentes cellules de la colonne D pour qu'elles produisent les résultats que j'y ai entrés manuellement.

Bonne après-midi

Aloha
 

ROGER2327

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Re...
Bonjour "Roger2327",

Merci beaucoup pour la peine que tu t'es donnée.

Cependant, je suis finalement à la recherche de formules pour les différentes cellules de la colonne D pour qu'elles produisent les résultats que j'y ai entrés manuellement.

Bonne après-midi

Aloha
Je ne me suis pas donné beaucoup de peine, rassurez-vous.
J'ai fait cette proposition parce que je ne vois pas de formule relativement simple pour résoudre votre problème. Si vous en avez trouvé une, merci de satisfaire ma curiosité en la publiant.
Bon courage.
ROGER2327
#2650
 

Aloha

XLDnaute Accro
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonsoir,

Voici une formule qui marche:
en D3 dans le fichier exemple:
=SI(OU(A3="";A3<>A2);C3;MIN(60;SOMME.SI(A$3:A3;A3;$C$3:C3))+MAX(0;(SOMME.SI($A$3:A3;A3;$C$3:C3 )-60)/2)-SOMME.SI($A$2:A2;A3;$D$2: D2))

Bonne soirée

Aloha
 
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Re...
Merci.
En fait, je n'avais pas compris le problème : j'ai cru qu'il fallait trouver une formule pour calculer le résultat en C15 (c'est-à-dire trouver directement 107,5).​
ROGER2327
#2655
 

Aloha

XLDnaute Accro
Re : Compter différemment les valeurs consécutives (critère: <61 ou >60)

Bonjour,

Mon petit problème s'est compliqué.

Admettons qu'une personne est absente du 1. au 7.1., du 13. au 16.1., puis du 20.1. au 30.3.

Avec la solution que j'ai jusqu'ici toutes les absences en janvier sont additionnées pour atteindre les 60 jours (puisque je n'ai qu'un seul chiffre pour janvier), alors que seules la dernière absence compte, le critère étant 60 jours de suite.
Quelqu'un a-t-il une petite idée pour résoudre ce problème?

J'ai joint un exemple et là le problème se résume à:

comment additionner les différents groupes d'absences séparément, mois par mois?

Merci pour toute aide

Aloha
 

Pièces jointes

  • Groupes de jours additionne.zip
    13.2 KB · Affichages: 84
Dernière édition:

Discussions similaires

Réponses
306
Affichages
25 K