Plusieurs feuilles, 1 case, plusieurs calculs


#1

Bonsoir,

Voila dans le document que je met en pièce jointe, j’ai une feuille calendrier pour la pose des vacances dans une entreprise et la feuille Solde qui récapitule les CA pris et réstant.

Le globale de l’affaire ce passe en jour et c’est très bien mais, j’ai rajouté une case “heures supp” (HS).

Mon envie est de faire fonctionner cette case comme une case jour .

Par exemple je copie et colle la case “heure supp” et je remplace le contenu par 01:00:00, soit une heure d’heure supp.
Je recopie cette casse 3 fois, ce que devrais faire 3 heures supp dans mon onglet Solde a l’endroit HS 2017.

Mais c’est la que ça bloque…

Je n’arrive pas à faire en sorte que dans l’onglet solde soit pris en compte que les cases “heure supp” (soit 01 :00:00 ) de l’onglet Calendrier et non le total de la colonne.

C’est pas très claire je l’avoue .

Quelqu’un peu me guider?

gestion_conges_2017-essai.xlsm (316,6 Ko)


#2

Bonjour

Ton fichier ne fait actuellement que compter les cases suivantes

Auquel il affecte un coefficient de 1 ou 1/2 selon le cas
En fait il ne compte que les journées et les demi journées.

Si tu changes le texte de la cellule, elle n’est plus comptée…

Pour compter les heures supplémentaires, il te faudra rajouter une fonction somme dans ton onglet Solde qui somme les heures sur la période concernée.
Il faudra aussi penser à comment convertir ces heures en journées puisque ton onglet solde compte les journées et pas les heures.


#3

Merci pour ta réponse,

Mais n’est t"il pas possible, comme pour les case jour, de dire la chose suivante :

Quand je copie la case HS (qui est convertie en HH:MM) et que je la colle dans le document calendrier alors dans la feuille solde le compteur cumule les heures qui ne paraissent que dans Ces case?

Car d’après ce que je comprend, ce que tu dis c’est que comme elle est qu’en jours je ne peux pas mélanger jour et heure?

Je sais qu’il faut utiliser la fonction somme mais je n’arrive à le faire . J’ai même pensé utiliser la couleur de la case pour permettre le calcule des heures mais je ne trouve pas la syntaxe correcte.

Si qq’un à une idée.

Merci


#4

Pour cela tu peux utiliser la formule =SOMME(CALENDRIER!D$6:D$370)

gestion_conges_2017-essai (6).xlsm (314,0 Ko)


#5

Merci pour ta réponse,

Je vais te laisser tranquille car apparemment je doit avoir du mal a faire comprendre ce que je cherche.
Tu penses bien que j’ai déjà essayé ca et même = somme_si _couleur somme. si etc… cette formule marche si tu l’applique a UNE feuille .

Moi j’aimerais qu’en D72 de la feuille SOLDE on est le résultat de l’addition de toutes les" heures supp" écritent dans la colonne D6:D370 de la feuille CALENDRIER.

Même mieu si possible :

j’aimerais qu’en D72 de la feuille SOLDE on est le résultat de l’addition de toutes les" heures supp" de la case F3, que j’aurais dupliqué au préalable, des colonnes D6:D370 de la feuille CALENDRIER.

En gros je pensais que ca ca irais ( en mettant les casse en heure bien sur) :

= SOMME (CALENDRIER!D$6:D$370;CALENDRIER!$F$3)

Mais ca ne marche pas

Je crois que je vais laisser tomber

Merci a toi


#6

Il n’y a que 2 feuilles dans ton classeur, je ne vois pas trop a quoi d’autre tu veux l’appliquer…


#7

Bien justement… une interaction entre les 2 … je sais plus comment expliquer pour etre claire pourtant ce que j’ai ecris me semblait satisfaisant.

Voila le genre de formule que je met qui marche mais qui calcule pas les heures mais les cases :

=SOMME_SI_COULEUR(CALENDRIER!D6:D370;CALENDRIER!F3)


#8

La façon dont tu expliques ton problème est extrêmement confuse. Lorsque tu explique un problème à quelqu’un d’autre il faut être précis dans les termes employés et expliquer en détail le fonctionnement de ton fichier.

Par exemple tu mentionnes la fonction suivante qui n’est pas une fonction disponible dans Excel

Tu mentionnes que les réponses données ne fonctionnent qu’avec une seule feuille alors qu tu voudrais l’appliquer a plusieurs mais il n’y a qu’une seule feuille de données sources dans ton fichier…

Bref un effort de clarté ne serait pas de refus.

Voici cependant ce que je penses comprendre de tes explications.

La fonction =SOMME(CALENDRIER!D$6:D$370) ne te convient pas car tu souhaites calculer uniquement les heures supplémentaires.

Pour cela tu souhaites sommer dans la colonne CALENDRIER!D:D uniquement les cellules qui ont une couleur identique à la couleur de la cellule CALENDRIER!F3

Pour cela tu utilises d’habitude la fonction SOMME_SI_COULEUR définie probablement de cette manière:

Function SOMME_SI_COULEUR(PlageSomme As Range, PlageCouleur As Range) As Variant
  '*********************************************************
 ' Effectuer la somme des cellules en couleur *
 '*********************************************************
 Dim Cel As Range
 Dim Som As Double
  ' Ne pas oublier l'option de recalcul automatique
 Application.Volatile
  '
 If PlageCouleur.Cells.Count > 1 Then
    SOMME_SI_COULEUR = CVErr(xlErrValue)
    Exit Function
  End If
  For Each Cel In PlageSomme
    If Cel.Interior.ColorIndex = PlageCouleur.Interior.ColorIndex Then Som = Som + Cel
  Next
  SOMME_SI_COULEUR = Som
End Function

Une formule possible à utiliser est alors:

=SOMME_SI_COULEUR(CALENDRIER!D6:D370;CALENDRIER!$F$3)

Pour qu’elle fonctionne il faut cependant qu’elle soit définie quelque part, soit dans ton code VBA (je l’ai rajoutée dans un Module ) soit probablement tu le fais d’habitude via un addin.

Je te suggère donc de vérifier si tous tes addins habituels sont bien installés.

gestion_conges_2017-essai (7).xlsm (315,4 Ko)