Microsoft 365 Comment faire pour double-cliquer d'une cellule et avoir l'heure actuelle arrondie au 15 minute pres sur excel

patrick965

XLDnaute Impliqué
bonjour forum
je cherche Comment faire pour que quand je double-cliquer dans la cellule D12 a D18 et F12 a F18 j'aimerais que l'heures actuel s'inscrive MAIS j'aimerais avoir l'heure actuelle arrondie au 15 minute pres .
exemple ;
les minutes entre 00 et 10 donne H:00
les minutes entre 11 et 21 donne H:15
les minutes entre 22 et 36 donne H:30
les minutes entre 37 et 52 donne :H:45
ceci est a titre d'exemple seulement je veux que les minute soie arrondie au 15 minute pres
jespere que vous comprener ce que je veux dire.
un grand merci pour votre aide
 

Pièces jointes

  • feulle de temps employer.xlsx
    20.7 KB · Affichages: 5

Dranreb

XLDnaute Barbatruc
Bonsoir.
Essayez comme ça dans le module Feuil1 (Feuille de temps) :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
   If Intersect(Me.[D12:D18,F12:F18], Target) Is Nothing Then Exit Sub
   Target.Value = Int(Time * 96 + 0.5) / 96
   Cancel = True
   End Sub
 

patrick965

XLDnaute Impliqué
bonjour
merci d'avoir pris le temps
mais ce que je cherche a faire est que quand je cliquer sur lest case soie D12 a D18 et F12 a F18
que l'heures arrondie au 15 minute pres apparesse
j'ais esseiller d'inscrire la formure mais ca me dit un message d'erreur qui suis en piece jointe.
merci de votre aide
 

Pièces jointes

  • feulle de temps employer.xlsx
    20.7 KB · Affichages: 2
  • essais 1 message d'erreur.png
    essais 1 message d'erreur.png
    153.8 KB · Affichages: 8
  • essais 1.png
    essais 1.png
    187.6 KB · Affichages: 6

patrick965

XLDnaute Impliqué
Dsl ignorer le dernier message
ca fonctionne pour les heures arriver et sortie mais ca ne fonctionne plus pour les date a C12 a C18
quand je double cliquais la date du jour s'inscrivais automatiquement et quand j'essais de remettre la formule un message d'erreur apparet voir en piece jointe. j'aimerais savoir pour quoi et comment procéder
merci beaucoup pour votre aide
 

Pièces jointes

  • feulle de temps employer2.xlsm
    28.6 KB · Affichages: 1
  • essais pour date  message d'erreur.png
    essais pour date message d'erreur.png
    171.3 KB · Affichages: 3

Dranreb

XLDnaute Barbatruc
Bonsoir.
Je ne vois rien du tout sur vos images.
Pour un simple clic ce serait :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   If Target.CountLarge > 1 Then Exit Sub
   If Intersect(Me.[D12:D18,F12:F18], Target) Is Nothing Then Exit Sub
   Target.Value = Int(Time * 96 + 0.5) / 96
   End Sub
Toujours dans le module de l'objet Worksheet représentant la feuille.
 

Dranreb

XLDnaute Barbatruc
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   If Target.CountLarge > 1 Then Exit Sub
   If Not Intersect(Me.[C12:C18], Target) Is Nothing Then
      Target.Value = Date
   ElseIf Not Intersect(Me.[D12:D18,F12:F18], Target) Is Nothing Then
      Target.Value = Int(Time * 96 + 0.5) / 96
      End If
   End Sub
 

Dranreb

XLDnaute Barbatruc
Soit vous mettez un format d'heure soit vous multipliez par 24.
Mais tant qu'il n'y a pas d'heure de départ il faudrait peut être calcuer les heures de travail avec l'heure actuelle aussi arrondie au quart d'heure le plus proche.
Ou pour faire plus simple, en Tableau_Feuille de temps[Heures de travail] :
Code:
=MAX([@[Heure de départ]]-[@[Heure d arrivée]]-[@Dinner];0)
 
Dernière édition:

patrick965

XLDnaute Impliqué
je croie pas que cest ce que je cherche a faire
je m'explique...
en G 5 les heures son comptabiliser via les scellule G12 @ G18
jaimerais qu'a la scellule G7 les heures avant 40 heures semaine comme incrit en G3 y soie Comptabiliser comme en G5 mais seulement les heures avant 40 heures.
en G9 que les heures apres 40 heures comptabiliser en G5 y soie inscrit
merci bk
 

Pièces jointes

  • feulle de temps employer 16h25.xlsm
    28.6 KB · Affichages: 1

Dranreb

XLDnaute Barbatruc
Plus prudent, en G5 :
Code:
=ENT(SOMME(Tableau_Feuille_de_temps[Heures de travail])*96+0,5)/4
toujours si tout est au quart d'heure près, et parce que les valeurs affichées ne sont pas celles enregistrées, vu qu'elles sont affichées en décimal ou sexagésimal mais enregistrées en binaire.

00:15 par exemple est bien enregistré en jour comme la valeur la plus proche possible de 1/96, mais vaut en réalité 6004799503160661 / 2^59
soit 0,01041666666666666608842550800773096852935850620269775390625 et
non 0,0104166666666666666666666666666666666…
 
Dernière édition:

patrick965

XLDnaute Impliqué
en G9 ( heures supplémentaire ce que je veux faire est que quand total des heures travailler déppasse 40 heures les heures exédentaire serons cummulée en g9
voici ce que jai esseiller de faire mais je ne sais pas comment la finir
=si(Total_des_heures_de_travail>Heures_de_travail_hebdomadaires