Somme de cellules variables vers le haut ET vers bas sans macro

jojo59

XLDnaute Nouveau
Bonjour,

Une image, un exemple est mieux qu'un long discours !! J'ai donc mis ce que je voulais en exemple


Quelques précisions tout de même : le nombre de lignes peut varier d'un jour à l'autre
Il peut donc y avoir plusieurs cellules vers le haut ou/et vers le bas à additionner !

N'hésitez pas à me posez vos questions !

Un grand merci d'avance
 

Pièces jointes

  • Excel dl.xlsx
    53.7 KB · Affichages: 83
Dernière édition:

jojo59

XLDnaute Nouveau
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Je pense à EQUIV(INDIRECT(~vers le haut depuis 22h~)+EQUIV(INDIRECT(~vers le bas jusque 6h~) mais je ne sais pas comment rédiger cette formule. Merci.
 
Dernière édition:

jojo59

XLDnaute Nouveau
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Oups ! Petite erreur en N4 je veux obtenir la somme de N3+N5=7:40 et non 6:20 !!

C'est bien la formule de N4 que je veux obtenir et non N2, N3, N5, etc... que j'ai déjà trouvée

Merci !
 

Misange

XLDnaute Barbatruc
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Bonjour
144 affichages et pas une seule réponse... Ca sent la question pas claire. Rien ne sert de réclamer de l'aide 5 fois, mieux vaut essayer de se mettre dans la peau de celui qui découvre le tableau et ne comprends pas la question posée.
Une image est peut-être mieux qu'un long discours mais prendre la peine de poser sa question en français au lieu d'envoyer juste un classeur est un excellent exercice qui bien souvent permet de résoudre déjà la moitié des problèmes.
 

CISCO

XLDnaute Barbatruc
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Bonjour à tous, bonjour Misange, bonjour Jojo59

Pourquoi ne fais-tu pas directement avec =N3+N5 en N4, formule que tu copies et tu colles en N8, et ainsi de suite ?

Si ce n'est pas ce que tu veux, donnes nous plus de détails, comme demandé par Misange.

@ plus
 

jojo59

XLDnaute Nouveau
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Bonjour à tous, bonjour Cisco et Mésange,

Tout d'abord je voudrais effectivement m'expliquer sur ce post très court : J'ai essayer (sur 7 forums) la version super longue et super détaillée : 400 vues, pas 1 réponse alors j'ai tenté l'autre méthode :)

Je vais donc apporter quelques explications :

Je suis en train de réaliser un tableau très lourd (35 colonnes, plus de 2500 lignes pour l'instant avec pour quasi chaque cellule 2 lignes de formules sans compter les références circulaires!)

Cisco, l'idée de mettre =N3+N5 en N4 vient rapidement à l'esprit mais c'est en fait bien plus compliqué que cela malheureusement!

J'ai mis l'exemple un peu corrigé par une autre personne (Claude), ça va être plus simple pour comprendre.

Il y a 2 colonnes pour le calcul que Claude a ajouté : [N] et [O] les calculs correspondent à mes attentes. Le seul "hic", c'est que je veux tout ça que dans UNE seule colonne! c'est à dire supprimer [O] pour avoir les résultat de la somme du haut ET du bas dans les lignes grisées.

Par exemple : "7:40" en N4 "6:20" en N8 et 4:20 en N10.

"7:40" est obtenu avec

Code:
=SI(B4="";SOMMEPROD(($B$2:B3=B3)*($J$2:J3>6/24)*$N$2:N3)+SOMMEPROD((B5:$B$8999=B5)*((J5:$J$8999<6/24))*N5:$N$8999);"")

Ce que je voudrais donc c'est le calcul vers le haut et le bas pour chaque jour entre 22h00 et 6h00.

Comme le nombre de lignes varie de 1 à 20 chaque jour, faire la somme N3+N5 ne sera pas suffisant.

La formule de Claude est bonne mais je n'ai pas réussi à la fusionner avec celles de [N]. Comme je ne maitrise pas très bien les fonctions SOMMEPROD ET MIN/MAX, c'est un peu chaud. Pour vous lancer sur la piste (et je suis quasi sur que cela peut fonctionner) voila avec quoi j'ai commencer

Code:
=SOMME(INDIRECT("N"&EQUIV(B12-1;B$1:B12)):N10)+SOMME(INDIRECT("N"&EQUIV(B12+1;B:B)-2):N12)

Cette formule que j'ai faite est partiellement bonne puisqu'elle calcule vers le haut et vers le bas qu'une seule journée mais je n'arrive pas à ajouter comme condition "calcule vers de haut depuis 22h au jour précédent et vers le bas jusque 6h". Je pense qu'en fusionnant la formule de Claude avec la mienne on obtiendra THE bonne formule!!

Autre précision la fomule que j'ai faite fonctionne avec, dans la colonne , (en B10 par exemple)

Code:
=SI(A10<>"";INDIRECT("B"&EQUIV(9^9;$B$1:B10))+1;"")

et c'est cette formule a garder en

J'espère avoir été clair dans mes explications

Un grand merci d'avance !!!

Cordialement

Jojo
 

Pièces jointes

  • Taxi.xlsx
    55 KB · Affichages: 53

Misange

XLDnaute Barbatruc
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Désolée, je dois être bouchée ou idiote mais je ne comprends pas ce que tu cherches, EN FRANCAIS :) pas en excel :

"Ce que je voudrais donc c'est le calcul vers le haut et le bas pour chaque jour entre 22h00 et 6h00"
le calcul de quoi ? et mis où ?
Tu as des tas de formules partout mais nous n'avons pas les règles de base pour ces calculs (et là encore je parle des règles en français pas des formules excel). Il est bien plus simple pour moi de comprendre "je décompte mon temps à partir du moment ou XXX (appel client, prise en charge, autre règle...)". Mes heures de travail correspondent à ... (comment faut-il tenir compte des heures de retour ?)


Spontanément, quand je vois ton tableau, je me dis qu'au lieu de chercher une formule super compliquée qui s'ajuste à une présentation, mieux vaudrait faire une base de données, qui permette de faire des calculs plus facilement et ensuite seulement de sortir de là le tableau pour faire une jolie présentation.
Les tableaux croisés dynamiques sont très pratiques pour faire des opérations sur N lignes quand N varie...
 

jojo59

XLDnaute Nouveau
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Ok désolé je pensais qu'en mettant les formules ça aller t'aider directement... Oups !

En fait on a déjà quasi en cumulant les 3/4 de la formule donc j'ai peut etre pris un raccourci puisqu'on avait des éléments de réponses ...

Ce que je voudrais c'est pour chaque trajet (chaque ligne) on calcul le nombre d'heures effectuées entre 22h et 6h en se basant sur le début du trajet [J] et la fin de trajet [L] ou [M]. Sachant que [L] est rempli s'il s'agit d'un départ suivi directement d'un retour précisé en [D]. En [M] : date de retour à mon domicile. Si [L] est rempli [M] est vide et vice versa.

Donc pour avoir le nombre d'heures avant 22h on se base sur l'heure de début de trajet, si c'est supérieur ou égal à 22 on soustrait l'heure de fin de trajet en [L] ou [M] à l'heure de début [J] pour obtenir le nombre d'heures effectuées dans la tranche 22h/6h. Idem pour le lendemain si la fin de trajet est inférieur à 6h on soustrait l'heure de fin de trajet en [L] ou [M] à l'heure de début [J]. Cette étape avait déjà était faite dans le classeur "Taxi". Mais j'espère avoir apporter un peu plus de précision pour t'aider à comprendre.

Ensuite il faut additionner entre chaque journée ce qui a été calculé dans la tranche 22h/6h.

Exemple entre le 1/04 et le 2/04 il faut additionner tout ce qu'on a calculer le 1/04 à partir de 22h et le 2/04 jusque 6h.

Il faut faire tout de même faire attention à ne pas faire le calcul tout bête de prendre TOUT ce qu'on a calculé le 1/04 puisqu'il se peut qu'il y ait des trajets fait AVANT 6h qui appartiennent à la tranche 22h/6h du 31/03 au 1/04 et non du 1/04 au 2/04 !!

Cordialement

Jojo
 

jojo59

XLDnaute Nouveau
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Je pense que je suis pas loin de la solution. Ça donne à peu près ça en N8 par exemple:

=SI(A8<>"";SOMMEPROD(((INDIRECT("J"&EQUIV(B9-1;B$1:B9)):J7)>22/24)*INDIRECT("N"&EQUIV(B9-1;B$1:B9)):N7)+SOMMEPROD((INDIRECT("J"&EQUIV(B9+1;B:B)-2):J9)<6/24)*INDIRECT("N"&EQUIV(B9+1;B:B)-2):N9);...

"..." veut dire que je connais la suite qui servira aux calculs par trajet (dans l'exemple, ça servira pour N3,N5,N6,N7,N9) donc inutile d'aller plus loin.

Je ne maitrise pas très bien SOMMEPROD mais ça me parait une très bonne fonction pour ce que je désire. Les "bouts" de formule "INDIRECT(...&€EQUIV(...):..." sont déja utilisés dans d'autres formules de mon tableau d'origine et fonctionne bien le problème c'est que je n'arrive pas à imbriquer ça avec le SOMMEPROD.

Quelqu'un pourrait essayer de corriger ?

Merci
 

Misange

XLDnaute Barbatruc
Re : Somme de cellules variables vers le haut ET vers bas sans macro

Bonjour

Une proposition, avec pas mal de changements dans les formules pour les simplifier.
Il faut que tu vérifies avec des données variées pour voir si ça colle car même avec tes explications détaillées, je ne suis pas sure d'avoir eu toutes les clés pour comprendre la façon dont sont faits les calculs. Tu peux très bien faire des calculs sur des heures sans avoir besoin de passer par une extraction de texte (ça m'a pris un moment de comprendre ton calcul...).
J'ai séparé la saisie des données, en les mettant sous forme d'un tableau excel, de sorte que les formules se répètent toutes seules quand tu ajoutes une ligne (il suffit pour cela d'écrire dans la première cellule vide sous le tableau), et leur analyse via un TCD.
Les heures de nuit sont comptées pour la journée ou la course a commencé. Autrement dit, si tu charges un client à 23:30 le mardi et que la course finit à 9h le mercredi, toutes les heures de nuit seront comptées sur le mardi, même si presque toutes ont été réalisées le mercredi. Aucune ne sera comptée pour le mercredi (sinon ça ferait doublon en plus).
Dans le tableau sur la page base, les heures de fin sont dans une seule colonne que ce soit retour à la maison ou début d'une prise en charge suivante. Mais j'ai ajouté une colonne à côté pour indiquer si c'était la fin de la "journée" ou pas.

Dans le TCD, j'ai fait un exemple de synthèse des données par jour. Tu peux aussi à la place de jour mettre l'étiquette des semaines pour faire le bilan hebdomadaire
 

Pièces jointes

  • Copie de Excel dl.xlsx
    66.4 KB · Affichages: 56

Discussions similaires

Statistiques des forums

Discussions
312 184
Messages
2 086 008
Membres
103 088
dernier inscrit
Psodam