Tableau horaire

Mesdames,

Messieurs,

J'ai besoin de votre aide, je n'arrive pas à trouver la solution.

Dans le tableau repris en annexe, j'ai une feuille "DONNEES" qui reprend des codes que l'on peut insérer dans la case D "CODE".

Quand une personne encode son code, j'aimerais que l'heure reprise à côté du code s'indique directement dans la case K "JOUR".

Un exemple, je suis malade, je tape le code 3 et 07:36 appraisse dans la case K.

Attention, si quelqu'un choisi le code F ou L et encode des horaires (par exemple de 08:00 à 12:00), il faut que dans la colonne K 02:00 apparaissent et dans la colonne O il rajoute deux heures.

J'espère que je me suis fait comprendre.

Merci pour votre aide.

7memento-2019.xlsx (26.58 Ko)

Bonjour,

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Columns("D")) Is Nothing Then Exit Sub
Dim Trouve As Range
    Set Trouve = Sheets("DONNEES").Range("B28:B39").Find(what:=Target.Value, LookAt:=xlWhole)
    If Trouve Is Nothing Then Exit Sub
    Target.Offset(, 7).Value = Trouve.Offset(, 4).Value
End Sub

Il me reste à comprendre et faire le cas de F ou L

4memento-2019.xlsm (34.50 Ko)

Attention, si quelqu'un choisi le code F ou L et encode des horaires (par exemple de 08:00 à 12:00), il faut que dans la colonne K 02:00 apparaissent et dans la colonne O il rajoute deux heures.

je n'ai pas compris la logique

pourquoi 2 d'un côté et 2 de l'autre ?

s'il met 8h - 11h cela devient quoi ?

En fait si dans la colonne code il y a F m, cela veut dire qu’il travaille mais en heure sup, donc si il travaille de 8 à 10 il faut accumuler deux heures...

D'abord, j'aurais dû te proposer une formule plutôt qu'un code VBA

4memento-2019.xlsx (26.26 Ko)

Ensuite, j'ai bien compris qu'il fallait compter des heures sup, mais tu ne réponds pas tout à fait à ma question :

je n'ai pas compris la logique

pourquoi 2h d'un côté et 2h de l'autre ?

s'il met 8h - 11h cela devient quoi ?

Je viens de remarquer que je me suis trompé. Désolé.

Quand il encode un code F, puis son horaire 8 a 12h, il faut que s’ajoute 4h dans la colonne prestés et 4h en plus dans la colonne difference.

Idem pour 8 à 11h, mais 3 h

C'est plus logique,

donc voici, à tester

9memento-2019.xlsx (25.95 Ko)

Bonjour,

Merci pour le travail, petit soucis, quand on indique dans la case code "F" ou "L" il faut que les heures encodées deviennent des heures prestées "ok" mais dans la différence, il doit faire 7:36 + les heures prestées.

Un exemple : je suis à 0 en heure sup, j'encode F le lendemain de 08h00 à 10h00 donc dans différence je passe à + 02:00.

Merci

Merci pour le travail, petit soucis, quand on indique dans la case code "F" ou "L" il faut que les heures encodées deviennent des heures prestées "ok" mais dans la différence, il doit faire 7:36 + les heures prestées.

Dans ce cas, dans ton tableau des codes, au lieu de 0 tu dois mettre 7:36

capture d ecran 249

Oui juste je n'y avais pas pensé, bien vu merci

J'ai encore un soucis.

Nous pouvons reporté des heures (+ ou -) tous les deux mois et cela dois apparaître dans la colonne (+/- différence)

Je ne sais pas si tu sais m'aider.

Merci

13memento-2019.xlsx (28.63 Ko)

J'ai ajouté :

  • en ligne 40 les dernières valeurs du mois, en recherchant les valeurs correspondant au dernier jour du mois
  • en ligne 4 une formule assez complexe qui va lire, si le mois en impair, les valeur de la ligne 40 du mois précédent
Attention à mettre les mois selon la codification décrite dans l'onglet adhoc

Il te reste à prendre en compte les valeurs de la ligne 4 dans ton calcul ... car là je ne maîtrise pas tes formules !

6memento-2019.xlsx (29.15 Ko)
Rechercher des sujets similaires à "tableau horaire"