Suivi de tâche en 3*8 en fonction des heures

Bonjour le Forum

J'essaye de réaliser un suivi de différente tâche par jour et sur la base de 5h00 (matin) à 5h00 (l'autre matin).
Pour cela j'ai commencé ce fichier (PJ) qui pour l'instant ne comporte pas toutes les tâches

Point 1:

Feuille "CHRONOLOGIE"La mise en forme conditionnelle ne s'applique pas comme je le souhaite -> j'ai entouré.

elle ne prends pas en compte la date du jour, je n'ai pas trouvé l'astuce pour l'instant

Point 2:

La colonne "G" est pour l'instant saisie manuellement

Serait-il possible d'utiliser le tableau en feuille "DB_Temleader pour automatiser

Exemple; en B8 13/01/25 en D8 5h donc en G8 GW remplissage jaune

Je suis partie sur ce principe, mais si cela n'est pas une bonne idée , je suis ok pour modifier ou refaire la base.

Merci de votre aide

Bonne journée à tous

23phasage-v1.xlsx (21.72 Ko)

Bonjour,

Pour la première question, pour les heures, il faut mettre le format "heure" et pas "numérique", puis pour les calculs, il faut intégrer les dates, ainsi votre formule en I8 devient:

=SI(ET($H$3+I$7>=$B8+$D8;$H$3+I$7<=$B8+$F8);" ";"")

Donc, pensez à saisir les heures au format HH:MM

******************************************************************************************************************************

Pour la 2ème question, récupération des "Teamleader" par formule avec ajout d'une formule complémentaire en colonne G (que vous pouvez masquer) pour déterminer à quelle la plage horaire correspond la période.

Pour appliquer les couleurs, je suis passé par une macro, évènementielle qui détecte la saisie du "temps de tâche" et applique la couleur correspondante

Cdlt

Bonjour le Forum

Bonjour Arturo83

Merci de ton retour, je regarde tes corrections

Et je continue mes recherches pour le reste suivant des propositions

Bonne journée à tous

Bonjour le forum

Bonjour Arturo83

Voilà j'ai revérifié ce jour le programme que tu as modifié, et désolé il y a plusieurs soucis

La colonne Teamleader donne pas les bons retours , pourtant la colonne plage horaire est OK

La partie BASE DE TEMPS fonctionne partiellement ( j'ai mis si vrai "1" pour plus de rendu)

Je continu ma saisie sur un autre fichier non automatisé, car il faut que je termine pour le 03/12/24

Pour celui-là je continue le soir a décortiquer tes formules.

merci de l'aide déja apporté

Bonne fin de journée

Bonsoir,

Effectivement, il manquait un "$" dans la formule, ce qui décalait la plage de recherche.

Cdlt

bonjour ledzep, salut Arturo83,

avec quelque couleurs.

Bonjour le Forum

Bonjour Arturo83 & BsAlv merci de vos retours

Je regarde cela ce week end et je vous tiens au courant.

Encore merci pour votre aide.

Bonne fin de journée à tous

Bonjour le Forum

Bonjour BsAlv & Arturo83

Comme promis j'ai vérifié ce week-end et en regardant ici ou là sur le web, je me rendu compte que cela n'était pas possible avec une MFC de mettre les couleurs par Tâche comme je le voulais.

Donc j'ai supprimé la partie MFC, et modifier une Macro "Macro1" pour mettre en couleur la partie grah , mais partiellement hélas.

Sub Macro1()

Dim R, I As Long
Dim Durée As Integer
Dim derlig1 As Integer
Dim derlig2 As Integer

     'PROCEDURE POUR EFFACER ET METTRE EN FORME  ("Zone_GraphBTps")

derlig1 = ActiveSheet.Range("J" & Rows.Count).End(xlUp).Row  'Ont Met dans la viariable derlig la colonne "I"

        With Sheets("CHRONOLOGIE").Range("Zone_GraphBTps")              'Dans la feuille "CHRONOLOGIE" sélection de la plage du tableau "Zone_GraphBTps"

            .ClearContents                                          'On efface toutes les valeurs
            .Interior.Color = xlNone                                'On efface toutes les couleurs
            .HorizontalAlignment = xlLeft                             'On Définit la valeur de la cellule à Gauche
            .VerticalAlignment = xlCenter                             'On Définit la valeur de la cellule au Centre
            .Font.Size = 18                                           'On définit la taille de la police
            .Font.Bold = True                                         'On Définit la police en Gras
        End With

        On Error Resume Next

    'PROCEDURE POUR METTRE A JOUR  ("Zone_GraphBTps")

derlig2 = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row  'Ont Met dans la viariable derlig la colonne "A"

        For I = 8 To derlig2             'On boucle a partir de la ligne N°8

            If Cells(I, 4) <> "" Then       'On recherche Ds la colonne "Début Tâche si non vide

            R = Application.Match(Cells(I, 4), Range("Zone_BTps"), 0)      'On recherche la conrespondance de la valeur "Début de Tâche"  dans le tableau "Zone_Btps"

                If R > 0 Then
                    Durée = Cells(I, 4) + Cells(I, 6) + 1  'On récupère la durée de "Fin Tâche"

                    Cells(I, R + 9).Value = Cells(I, 2) & "  /  " & Cells(I, 8)     'On inscrit le "N° Tâche et le "Teamleader" Ds la première cellule de la plage

                    If Durée > 1 Then

                        Cells(I, R + 9).Resize(, Durée).Interior.Color = Cells(I, 8).DisplayFormat.Interior.Color       'On met la couleur associé de la colonne "H"

                    End If
                End If
            End If
        Next I

End Sub

En fait je pense que cette ligne :

 If R > 0 Then
                    Durée = Cells(I, 4) + Cells(I, 6) + 1  'On récupère la durée de "Fin Tâche"

Le calcul est faut.

De plus si je met un début de tâche dison > 13h alors je n'ai plus rien qui apparait sur le graphique.

Merci de votre aide

Bonne journée à tous

re,

une erreur d'arrondir !!! (grandeur = 1E-14)

essayez (en ajoutant 1 seconde et comparer "<=" au lieu de "<" (3eme variable =1 au lieu de 0)

          R = Application.Match(Cells(I, 4) + TimeSerial(0, 0, 1), Range("Zone_BTps"), 1) 'On recherche la conrespondance de la valeur "Début de Tâche"  dans le tableau "Zone_Btps"

et la durée (24 h = 1, donc 0,5 h = 1/48)

 Durée = Cells(I, 5) * 48 'On récupère la durée de "Fin Tâche"
                  

Bonjour le forum

Re, BsAlv

J'ai essayer de suivre tes recommandations, mais hélas:

la première ne fonctionne pas R est en erreur quand je le teste, j'ai donc laisser l'initiale.

  R = Application.Match(Cells(I, 4) + TimeSerial(0, 0, 1), Range("Zone_BTps"), 1) 'On recherche la conrespondance de la valeur "Début de Tâche"  dans le tableau "Zone_Btps"

Par contre la seconde fonctionne et mis +1 pour avoir l'heure.

 Durée = Cells(I, 5) * 48 +1 'On récupère la durée de "Fin Tâche"
                  

Chose bizarre , est que si je saisie la fourchette début de tâche de 7:00 rien ne se passe ainsi que 00:00 sur la partie graphique

Cela dépasse mes compétences

Merci de votre aide
Bonne fin de journée à tous

Re le forum , Re BsAlv

MERCI je viens de regarder la solution trop fort

 R = Application.Match(Cells(I, 4).Value + 1 / 86400 - (Cells(I, 4).Value < TimeValue("05:00:00")), Range("Zone_BTps"), 1) 

Il est impossible pour moi de trouver cette formule

Merci beaucoup de ton aide.

Je clôture ce post en fin de semaine quand j'aurais rempli mes données.

Bonne soirée à tous

Bonsoir ledzep, BsAlv,

J'avais regardé de mon côté, je vous le propose quand même, bien que j'arrive un peu tard.

Cdlt

Bonjour le Forum

Bonjour BsAlv

Merci de ta réponse, je prends les 2 solutions, cela va me permettre de voir 2 approches différentes pour un résultat identique.

Encore Merci pour ton aide

Bonne journée à tous

Bonjour le Forum

Bonjour BsAlv & Arturo83

Les fichiers fonctionnent correctement,

j'ai essayé d’insérer ou supprimer une ligne du tableau pas de blocage.

j'ai seulement modifié cela

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("F8:F1000")) Is Nothing Then
        Couleur_TeamLeader
    End If
End Sub

par cela

Private Sub Worksheet_Change(ByVal Target As Range)

Dim KeyCells As Range
 Set KeyCells = Union(Range("E8:E1000"), Range("D8:D1000")) ' On surveille si ces cellules sont modifiées
    If Not Application.Intersect(KeyCells, Target) Is Nothing Then  'Si ce n'est pas le cas on ne fait rien
        Call Couleur_TeamLeader
    End If
End Sub

Merci à vous de m'avoir aider sur ce projet.

J'avoue que le travail avec des heures et dates c'est compliqué pour moi, et cela le reste encore

Bonne journée à tous.

Rechercher des sujets similaires à "suivi tache fonction heures"