Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Temps de travail

  • Initiateur de la discussion Initiateur de la discussion Konte94
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Konte94

XLDnaute Junior
Salut tout le monde, je vous en prie qui peut m'aider à écrire un programme vba qui me permettra de calculer la durée payée du travail d'un employé avec une pause obligatoire d'une heure qui s'étend de 12h:00 à 13h:00.
L'exercice est sur le fichier joint ci-dessous
 

Pièces jointes

Bonjour Konte94, le forum

Un essai FORMULES avec une colonne supplémentaire pour obtenir le lunchtime calculé à chaque date.
Sinon, ça va être "galère" à manipuler dans une formule.

xl-ment
zebanx
 

Pièces jointes

Dernière édition:
Bonsoir le fil, bonsoir le forum,

À tester :

VB:
Sub Macro1()
Dim O As Worksheet
Dim TV As Variant
Dim I As Integer
Dim COL As Byte
Dim D As Double
Dim F As Double

Set O = Worksheets("Calcul de temps de travail")
TV = O.Range("C7").CurrentRegion
For I = 2 To UBound(TV, 1) - 1
    Select Case Weekday(CDate(TV(I, 1)))
        Case 7
            COL = 5
        Case 1
            COL = 6
        Case Else
            COL = 4
    End Select
    If TV(I, 2) > 12 / 24 And TV(I, 2) < 13 / 24 Then D = 13 / 24 Else D = TV(I, 2)
    If TV(I, 3) > 12 / 24 And TV(I, 3) < 13 / 24 Then F = 12 / 24 Else F = TV(I, 3)
    If TV(I, 2) < 12 / 24 And TV(I, 3) > 13 / 24 Then F = TV(I, 3) - 1 / 24
    If (TV(I, 2) > 12 / 24 And TV(I, 2) < 13 / 24) And (TV(I, 3) > 12 / 24 And TV(I, 3) < 13 / 24) Then F = 0: D = 0
    O.Cells(I + 6, COL + 2).Value = IIf(F = 0 And D = 0, "", Format(F - D, "hh:mm"))
Next I
End Sub
 
Merci mais j'ai pas bien compris la formule.
Pouvez vous m'expliquer un peu svp
 
Re,

Alors fait l'effort de nous dire quelle est la ligne qui provoque l'erreur et quel est le message d'erreur. On n'est pas des devins !... Enfin pas moi, pour d'autres, j'ai des doutes...
 
Re,

Cela signifie que dans le fichier où tu as copier le code, l'onglet ne se nomme pas :
Calcul de temps de travail. Soit tu renommes l'onglet, sois tu modifies le code mais il faut que ça soit identique...
En pièce jointe le fichier de ton premier post avec le code. Ça semble fonctionner...
 

Pièces jointes

Merci Robert je commence à comprendre. Mais j'ai remarqué dans dans mes calcules y'a une erreur au niveau du TOTAL HEURES NORMALES.je suis trop embêtant mais svp aidez mw.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
253
Réponses
16
Affichages
1 K
Réponses
9
Affichages
1 K
  • Question Question
Réponses
12
Affichages
1 K
Réponses
1
Affichages
919
Réponses
2
Affichages
694
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…