Faire un historique en incrémentant la date

Bonjour à tous,

Alors voilà, étant débutante dans Excel et le VBA, je me tourne vers vous pour que vous puissiez m'aider..

Je suis sur un outil pointage, et celui-ci s'ouvre tout d'abord sur un UserForm. Le UserForm contient la date du jour. Lorsqu'une personne remplit ce UserForm pour pointer sa journée, celui-ci renvoie à un classeur avec une feuille "Récapitulatif". Sur ce Récapitulatif on y retrouve les informations rempli précédemment. Jusqu'ici tout va bien.

Le problème est : que les personnes pointent parfois plusieurs fois dans la journée, et à chaque ligne remplie on retourne sur l'UserForm et il supprime la ligne crée dans le Récapitulatif. Donc les personnes ne peuvent plus voir ce qu'elles ont pointé dans la journée sur le Récapitulatif.

On m'a donc demandé de transformé le Récapitulatif en "Historique", c'est-à-dire que les personnes puisse voir ce qu'elles ont pointé sur toute une semaine, donc faire une boucle en fonction de la date. Par exemple, un Lundi la personne va voir jusqu'au lundi précédent, le mardi elle ne verra plus que ce qu'elle a fait jusqu'au mardi dernier ect.. on incrémente la date de un à chaque fois.

Pourriez-vous donc m'aider à produire cette boucle pour obtenir les informations sur 7 jours et qu'elle disparaisse au fur et à mesure que les jours avancent ?

Et si possible m'aider sur l'historique dans son intégralité, sachant que les données je dois les extraire d'un autre classeur pour pouvoir les récupérer à chaque fois, ajouter les lignes du UserForm puis appuyer sur un bouton "enregistrer" (La macro du bouton est déjà présente), puis avoir comme résultat ma feuille récapitulatif qui reprend les données rentrées sur 7 jours avec les lignes rajoutée dans la journée...

En espérant que vous puissiez m'aider et que ce soit assez clair comme explication.

Merci de votre attention.

Bonne journée à tous.

Bonjour et bienvenue,

Merci de joindre un fichier à ta demande pour une aide adaptée du forum.

Cdlt.

Bonjour et sur le forum,

Tu nous parles d'un fichier et d'un formulaire mais on ne peut voir ni l'un ni l'autre, tes explications ne sont donc pas très compréhensibles

Pourrais-tu nous les joindre? (sans informations confidentielles). Faire le pointage ça m'a l'air plutôt simple, mais je ne comprends pas trop l'utilité du formulaire, tu peux obtenir la date du pointage, l'heure ainsi que le nom de la personne avec les variables suivantes : Date, Time, UserName, ensuite pour masquer les valeurs qui n'intéressent plus, il faut que je sache si il s'agit juste de les masquer ou bien de les effacer (en clair est-ce que tu as besoin de les garder ou non).

Merci à vous d'avoir regardé mon message,

C'est très compliqué de vous montrer car c'est un trop gros fichier qui va chercher dans plusieurs classeurs différents les informations et c'est un outils d'entreprise que je ne peux pas trop vous montrer comme les informations confidentielles sont présentes et ne peuvent être enlever

Mais c'est sensé être un programme très simple a réaliser...

Lorsque les informations sont dans le Récapitulatif, elles sont envoyées dans un autre classeur grâce au bouton "enregistrer" que seul le chef y a accès pour pouvoir faire une facturation des activités que chaque personne aura rentrées tous les jours.

Donc les données rentrées dans les jours précédent devraient certainement être extraites du classeur pour le chef afin qu'elle revienne dans le Récapitulatif sur 7 jours afin que les personnes puissent les revoir, les données doivent être masqué au fil des jours donc ?

Merci pour vos réponses

Re,

Un programme est simple à réaliser quand on a une idée de ce à quoi ressemble le fichier, mais si on ne sait pas, on a plus de mal à le réaliser et souvent il ne convient pas à la personne car le programme n'est pas adapté à son fichier, on a pas besoin de voir toutes les infos de ton fichier, mais juste avoir une idée de la structure de ton fichiers et des données qui se trouvent dedans, un échantillon de 100 lignes suffirait amplement, pas besoin de mettre les vraies infos ou de laisser les formules.

Voici une grosse partie du code générale si cela peut vous aider...

Declare Function GetWindowLongA Lib "user32" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long

 Declare Function SetWindowLongA Lib "user32" _
(ByVal hWnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Sub enregister()            'Transfert des données depuis le classeur recapitulatif vers le classeur admin
    Dim i As Integer
    Dim J As Integer
    W_Recap.Activate
    W_Recap.Worksheets("recapitulatif").Unprotect
    For i = 2 To Range("A65536").End(xlUp).Row
            'Cells(2, 6).Value = Cells(2, 6).Value / 100
            W_RecapG.Worksheets("Données_à_extraire").Activate
            Rows(2).Insert
            Range("A2:L2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
            W_RecapG.Worksheets("Données_à_extraire").Range("A2", "H2").Value = W_Recap.Worksheets("Recapitulatif").Range("A2", "H2").Value
            W_Recap.Activate
            Rows(2).Delete
        Next i
    W_Recap.Worksheets("recapitulatif").Shapes("Rectangle 2").Visible = False
    W_Recap.Worksheets("recapitulatif").Protect
    UserForm3.Show 0
    W_RecapG.Worksheets("Données_à_extraire").Activate
    For i = 2 To Range("A65536").End(xlUp).Row
            If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 2) Like "*OS-APT*" Then       'Si l'Os est une activité
            If W_RecapG.Worksheets("Données_à_extraire").Range("F" & i) = "SOUMETTRE APPROBATION" Then  'Si l'avancement est soumettre approbation
                W_RecapG.Worksheets("Etat des Activités").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2") 'On cherche l'os dans "Etat des activité"
                W_RecapG.Worksheets("Etat des Activités").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then                                        'Si l'OS n'existe pas dans "Etat des activité"
                    Rows(2).Insert                                   'On ajoute une nouvelle ligne
                    Range("A2:L2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Etat des Activités").Range("A2") = W_RecapG.Worksheets("Données_à_extraire").Range("B2") 'On note l'OS dans "Etat des activité
                    L = 2
                End If
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*DMOI*" Then                                                                     'On note la date
                    W_RecapG.Worksheets("Etat des Activités").Range("B" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   'dans "Etat des activité"
                End If                                                                                                                                          'en fonction de l'UO
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*ADR*" Then                                                                      'Soumise à l'approbation
                    W_RecapG.Worksheets("Etat des Activités").Range("C" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*ADS*" Then                                                                      '
                    W_RecapG.Worksheets("Etat des Activités").Range("D" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*DSI*" Then                                                                      '
                    W_RecapG.Worksheets("Etat des Activités").Range("E" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*DRE*" Then                                                                      '
                    W_RecapG.Worksheets("Etat des Activités").Range("F" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*OTM*" Then                                                                      '
                    W_RecapG.Worksheets("Etat des Activités").Range("G" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*PMRQ*" Then                                                                     '
                    W_RecapG.Worksheets("Etat des Activités").Range("H" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*Equipements*" Then                                                              '
                    W_RecapG.Worksheets("Etat des Activités").Range("I" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")   '
                End If                                                                                                                                          '
            End If
            End If
            If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 2) Like "*OS-APT*" Then          'ON repete le meme systeme pour les SOLDE
            If W_RecapG.Worksheets("Données_à_extraire").Range("F" & i) = "SOLDER" Then
                W_RecapG.Worksheets("Etat des Activités").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                W_RecapG.Worksheets("Etat des Activités").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then
                    Rows(2).Insert
                    Range("A2:I2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Etat des Activités").Range("A2") = W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                    L = 2
                End If
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*EAM*" Then
                    W_RecapG.Worksheets("Etat des Activités").Range("J" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")
                End If
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*ECM*" Then
                    W_RecapG.Worksheets("Etat des Activités").Range("K" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")
                End If
                If W_RecapG.Worksheets("Données_à_extraire").Cells(i, 3) Like "*EDF_CONSIGNE*" Then
                    W_RecapG.Worksheets("Etat des Activités").Range("L" & L) = Format(W_RecapG.Worksheets("Données_à_extraire").Range("A" & i), "dd/mm/yyyy")
                End If
            End If
            End If
        Next i
    End Sub

Sub Extraction()        'Extrait les Données depuis le classeur Admin vers le classeur Dev_Projet
    Dim i As Integer
    Dim J As Integer
    Dim L As Integer
    W_RecapG.Worksheets("Données_à_extraire").Activate
    Application.EnableEvents = False
    For i = 2 To Range("A65536").End(xlUp).Row
        W_RecapG.Worksheets("TempsOS").Activate
        'If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
        '    L = Range("A65536").End(xlUp).Row
        '        If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3) Like "*Production*" Then
        '        'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value =
        '       If W_Dev.Worksheets("Données_entrées").Range("P" & L).Value = "-" Then
        '            W_Dev.Worksheets("Données_entrées").Range("P" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        Else
        '            W_Dev.Worksheets("Données_entrées").Range("P" & L).Value = W_Dev.Worksheets("Données_entrées").Range("P" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        End If
        '        W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = W_Dev.Worksheets("Données_entrées").Range("G" & L).Value - W_Dev.Worksheets("Données_entrées").Range("P" & L).Value
        '    End If
        '    If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3) Like "*CT*" Then
        '        'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value =
        '        If W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value = "-" Then
        '            W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        Else
        '            W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value = W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        End If
        '        W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = W_Dev.Worksheets("Données_entrées").Range("G" & L).Value - (W_Dev.Worksheets("Données_entrées").Range("P" & L).Value + W_Dev.Worksheets("Données_entrées").Range("q" & L).Value)
        '    End If
        '    If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3) = ("Reprise-EAM") Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3) = ("Reprise-ECM") Then
        '        'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value =
        '        If W_Dev.Worksheets("Données_entrées").Range("R" & L).Value = "-" Then
        '            W_Dev.Worksheets("Données_entrées").Range("R" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        Else
        '            W_Dev.Worksheets("Données_entrées").Range("R" & L).Value = W_Dev.Worksheets("Données_entrées").Range("R" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
        '        End If
        '        W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = W_Dev.Worksheets("Données_entrées").Range("G" & L).Value - (W_Dev.Worksheets("Données_entrées").Range("P" & L).Value + W_Dev.Worksheets("Données_entrées").Range("q" & L).Value + W_Dev.Worksheets("Données_entrées").Range("r" & L).Value)
        '        W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "REPRISE"
        '    End If
        '    If W_Dev.Worksheets("Données_entrées").Range("K" & L).Value < 0.5 Then
        '       W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "EN COURS"
        '    Else
        '        If W_Dev.Worksheets("Données_entrées").Range("K" & L).Value < 0.7 Then
        '            W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "CT"
        '        End If
        '    End If
        '    If W_Dev.Worksheets("Données_entrées").Range("P" & L).Value <> "-" Then
        '        If W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value <> "-" Then
        '            W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = (CDbl(W_Dev.Worksheets("Données_entrées").Range("P" & L).Value) + CDbl(W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value)) / CDbl(W_Dev.Worksheets("Données_entrées").Range("G" & L).Value)
        '        Else
        '        W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = W_Dev.Worksheets("Données_entrées").Range("P" & L).Value / W_Dev.Worksheets("Données_entrées").Range("G" & L).Value
        '        End If
        '    End If
        'Else
            If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
            W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2")
            W_RecapG.Worksheets("TempsOS").Activate
            L = Range("A65536").End(xlUp).Row
            If L = 1 Then
                Rows(2).Insert
                Range("A2:H2").Select
                With Selection.Font
                    .Name = "Lucida Bright"
                    .Size = 9
                    .Strikethrough = False
                    .Superscript = False
                    .Subscript = False
                    .OutlineFont = False
                    .Shadow = False
                    .Underline = xlUnderlineStyleNone
                    .ThemeColor = xlThemeColorLight1
                    .TintAndShade = 0
                    .ThemeFont = xlThemeFontNone
                End With
                With Selection.Interior
                    .Pattern = xlNone
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
                W_RecapG.Worksheets("TempsOS").Range("A2") = W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                W_RecapG.Worksheets("TempsOS").Activate
                L = Range("A65536").End(xlUp).Row
            End If

            Else
            W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("C2")
            L = Range("A65536").End(xlUp).Row
            If L = 1 Then
                Rows(2).Insert
                Range("A2:J2").Select
                With Selection.Font
                    .Name = "Lucida Bright"
                    .Size = 9
                    .Strikethrough = False
                    .Superscript = False
                    .Subscript = False
                    .OutlineFont = False
                    .Shadow = False
                    .Underline = xlUnderlineStyleNone
                    .ThemeColor = xlThemeColorLight1
                    .TintAndShade = 0
                    .ThemeFont = xlThemeFontNone
                End With
                With Selection.Interior
                    .Pattern = xlNone
                    .TintAndShade = 0
                    .PatternTintAndShade = 0
                End With
                W_RecapG.Worksheets("TempsOS").Range("A2") = W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                W_RecapG.Worksheets("TempsOS").Range("B2") = W_RecapG.Worksheets("Données_à_extraire").Range("C2")
                W_RecapG.Worksheets("TempsOS").Activate
                L = Range("A65536").End(xlUp).Row
            End If
            End If

                If W_RecapG.Worksheets("TempsOS").Range("H" & L).Value = "" Or W_RecapG.Worksheets("Données_à_extraire").Range("A2").Value < W_RecapG.Worksheets("TempsOS").Range("H" & L).Value Then
                    W_RecapG.Worksheets("TempsOS").Range("H" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("A2").Value
                End If

                If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 5).Value = "Production" Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 5).Value = "Reprise_Production" Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like ("*Production*") Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like ("*Visite*") Then
                'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("F2").Value / 2
                'W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "EN COURS"
                    'If W_Dev.Worksheets("Données_entrées").Range("P" & L).Value = "-" Then
                    '    W_Dev.Worksheets("Données_entrées").Range("P" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                    'Else
                        If W_RecapG.Worksheets("TempsOS").Range("D" & L) <> "" Then
                            W_RecapG.Worksheets("TempsOS").Range("D" & L).Value = W_RecapG.Worksheets("TempsOS").Range("D" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                        Else
                            W_RecapG.Worksheets("TempsOS").Range("D" & L) = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                        End If
                    'End If
                   ' W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = (W_Dev.Worksheets("Données_entrées").Range("L" & L).Value * 60) - W_Dev.Worksheets("Données_entrées").Range("P" & L).Value
                'If W_Dev.Worksheets("Données_entrées").Range("P" & L) > W_Dev.Worksheets("Données_entrées").Range("T" & L).Value / 2 Then
                 '   W_Dev.Worksheets("Données_entrées").Activate
                 '   W_Dev.Worksheets("Données_entrées").Range("P" & L).Select
                 '   With Selection.Interior
                 '           .Pattern = xlSolid
                 '           .PatternColorIndex = xlAutomatic
                 '           .Color = &HFF&
                 '           .TintAndShade = 0
                 '           .PatternTintAndShade = 0
                 '   End With
                'End If
                End If

            If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 5).Value = ("Controle_Technique") Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "CT*" Then
                'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = ((W_RecapG.Worksheets("Données_à_extraire").Range("F2").Value) / 5) + 0.5
                'W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "CT"
                'If W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value = "-" Then
                '    W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                'Else
                If W_RecapG.Worksheets("TempsOS").Range("E" & L).Value <> "" Then
                    W_RecapG.Worksheets("TempsOS").Range("E" & L).Value = W_RecapG.Worksheets("TempsOS").Range("E" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                Else
                    W_RecapG.Worksheets("TempsOS").Range("E" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                End If
                'W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = ((W_Dev.Worksheets("Données_entrées").Range("L" & L).Value * 60) / 5 - W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value) + (0.3 * W_Dev.Worksheets("Données_entrées").Range("L" & L).Value * 60)
                'If W_Dev.Worksheets("Données_entrées").Range("Q" & L).Value > W_Dev.Worksheets("Données_entrées").Range("T" & L).Value / 5 Then
                '    W_Dev.Worksheets("Données_entrées").Activate
                '    W_Dev.Worksheets("Données_entrées").Range("Q" & L).Select
                '    With Selection.Interior
                '            .Pattern = xlSolid
                '            .PatternColorIndex = xlAutomatic
                '            .Color = &HFF&
                '            .TintAndShade = 0
                '            .PatternTintAndShade = 0
                '    End With
                'End If
            End If
            If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 5).Value = ("FAS_Reprise") Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 5).Value = ("FAS_Controle_Reprise") Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "Reprise-ECM*" Or W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "Reprise-EAM*" Then
                'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = ((W_RecapG.Worksheets("Données_à_extraire").Range("F2").Value) / 10) + W_Dev.Worksheets("Données_entrées").Range("K" & L).Value
                'W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "REPRISE"
                'If W_Dev.Worksheets("Données_entrées").Range("R" & L).Value = "-" Then
                '    W_Dev.Worksheets("Données_entrées").Range("R" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                'Else
                If W_RecapG.Worksheets("TempsOS").Range("F" & L).Value <> "" Then
                    W_RecapG.Worksheets("TempsOS").Range("F" & L).Value = W_RecapG.Worksheets("TempsOS").Range("F" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                Else
                    W_RecapG.Worksheets("TempsOS").Range("F" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                End If
                'End If
                'W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = (0.3 * W_Dev.Worksheets("Données_entrées").Range("L" & L).Value * 60) - W_Dev.Worksheets("Données_entrées").Range("R" & L).Value
                'If W_Dev.Worksheets("Données_entrées").Range("R" & L) > W_Dev.Worksheets("Données_entrées").Range("T" & L).Value / 3 Then
                '    W_Dev.Worksheets("Données_entrées").Activate
                '    W_Dev.Worksheets("Données_entrées").Range("R" & L).Select
                '    With Selection.Interior
                '            .Pattern = xlSolid
                '            .PatternColorIndex = xlAutomatic
                '            .Color = &HFF&
                '            .TintAndShade = 0
                '            .PatternTintAndShade = 0
                '    End With
                'End If
            End If
        'End If
            If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "Analyse*" Then
                If W_RecapG.Worksheets("TempsOS").Range("C" & L).Value <> "" Then
                    W_RecapG.Worksheets("TempsOS").Range("C" & L).Value = W_RecapG.Worksheets("TempsOS").Range("C" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                Else
                    W_RecapG.Worksheets("TempsOS").Range("C" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                End If
            End If

            If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "Reprise-EDF_CONSIGNE*" Then
                If W_RecapG.Worksheets("TempsOS").Range("G" & L).Value <> "" Then
                    W_RecapG.Worksheets("TempsOS").Range("G" & L).Value = W_RecapG.Worksheets("TempsOS").Range("G" & L).Value + W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                Else
                    W_RecapG.Worksheets("TempsOS").Range("G" & L).Value = W_RecapG.Worksheets("Données_à_extraire").Range("G2").Value
                End If
            End If
        'If W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = 0.7 Or W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = 1 Or W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = 0.8 Or W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = 0.9 Then
        'If W_RecapG.Worksheets("données_à_extraire").Range("E" & I) Like "Controle_Technique" And W_RecapG.Worksheets("données_à_extraire").Range("F" & I) = 1 Then
        '        W_RecapG.Worksheets("Attente_Approbation").Activate
        '        Rows("2:2").Insert Shift:=xlDown
        '        Rows(2).Interior.ColorIndex = xlNone
        '        W_RecapG.Worksheets("Attente_Approbation").Range("A2", "H2").Value = W_RecapG.Worksheets("Données_à_extraire").Range("A2", "H2").Value
        'End If
        'If W_RecapG.Worksheets("Données_à_extraire").Range("F2").Value = 1 And W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "FAS" Then
        'W_Dev.Worksheets("Données_entrées").Range("H" & L).Value = "SURVAILLANCE"
        'W_Dev.Worksheets("Données_entrées").Range("K" & L).Value = W_Dev.Worksheets("Données_entrées").Range("K" & L).Value + 0.1
        'End If
        'If W_Dev.Worksheets("Données_entrées").Range("T" & L).Value < 0 Then
        '                W_Dev.Worksheets("Données_entrées").Range("T" & L).Value = -W_Dev.Worksheets("Données_entrées").Range("T" & L).Value
        '                W_Dev.Worksheets("Données_entrées").Activate
        '                W_Dev.Worksheets("Données_entrées").Range("T" & L).Select
        '                With Selection.Interior
        '                        .Pattern = xlSolid
        '                        .PatternColorIndex = xlAutomatic
        '                        .Color = &HFF&
        '                        .TintAndShade = 0
        '                        .PatternTintAndShade = 0
        '                End With
        'End If
        'If W_RecapG.Worksheets("données_à_extraire").Range("E" & I) Like "FAS" And W_RecapG.Worksheets("données_à_extraire").Range("F" & I) <> 1 Then
        '    W_RecapG.Worksheets("attente_solde").Activate
        '    For L = 2 To Range("A65536").End(xlUp).Row
        '        If W_RecapG.Worksheets("attente_solde").Range("B" & L) = W_RecapG.Worksheets("données_à_extraire").Range("B" & I) Then
        '            If W_RecapG.Worksheets("données_à_extraire").Range("B" & I) Like "*OS-APT*" Then
        '                W_RecapG.Worksheets("Attente_solde").Range("A" & L, "H" & L) = ""
        '            Else
        '                If W_RecapG.Worksheets("attente_solde").Range("C" & L) = W_RecapG.Worksheets("données_à_extraire").Range("C" & I) Then
        '                    W_RecapG.Worksheets("attente_solde").Range("A" & L, "H" & L) = ""
        '                End If
        '            End If
        '        End If
        '    Next L
        'End If
        W_Dev.Worksheets("Données_entrées").AutoFilterMode = False
        'W_RecapG.Worksheets("Données_extraite").Activate
        J = W_RecapG.Worksheets("Données_extraite").Range("A65536").End(xlUp).Row + 1
        W_RecapG.Worksheets("Données_extraite").Range("A" & J, "H" & J).Value = W_RecapG.Worksheets("Données_à_extraire").Range("A2", "H2").Value

        If W_RecapG.Worksheets("Données_à_extraire").Range("F2") = "SOUMETTRE APPROBATION" And Not W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
                W_RecapG.Worksheets("Attente_Approbation").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("C2")
                W_RecapG.Worksheets("Attente_Approbation").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then
                    Rows(2).Insert
                    Range("A2:F2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Attente_Approbation").Range("A2") = W_RecapG.Worksheets("TempsOS").Range("A" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                    W_RecapG.Worksheets("Attente_Approbation").Range("B2") = W_RecapG.Worksheets("TempsOS").Range("B" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                End If
            End If
        'End If
        If W_RecapG.Worksheets("Données_à_extraire").Range("E2") = "FAS_Reprise" Or W_RecapG.Worksheets("Données_à_extraire").Range("E2") = "FAS_Controle_Reprise" Then
        'If Not W_RecapG.Worksheets("Données_à_extraire").Cells(2, 3).Value Like "Reprise-EDF_CONSIGNE*" Then
            If W_RecapG.Worksheets("Données_à_extraire").Range("F2") = "SOLDER" And Not W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
                W_RecapG.Worksheets("Attente_Solde").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("C2")
                W_RecapG.Worksheets("Attente_Solde").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then
                    Rows(2).Insert
                    Range("A2:G2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Attente_Solde").Range("A2") = W_RecapG.Worksheets("TempsOS").Range("A" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                    W_RecapG.Worksheets("Attente_Solde").Range("B2") = W_RecapG.Worksheets("TempsOS").Range("B" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                 End If
          End If
        'End If
        End If
        '
        If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
            If W_RecapG.Worksheets("Données_à_extraire").Range("F2") = "SOLDER" Then
                W_RecapG.Worksheets("Etat des Activités").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                W_RecapG.Worksheets("Etat des Activités").Activate
                L = Range("A65536").End(xlUp).Row
                If W_RecapG.Worksheets("Etat des Activités").Range("J" & L) <> "" And _
                W_RecapG.Worksheets("Etat des Activités").Range("K" & L) <> "" And _
                W_RecapG.Worksheets("Etat des Activités").Range("L" & L) <> "" Then
                W_RecapG.Worksheets("Attente_Approbation").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                    W_RecapG.Worksheets("Attente_Approbation").Activate
                    L = Range("A65536").End(xlUp).Row
                    If L = 1 Then
                        Rows(2).Insert
                        Range("A2:F2").Select
                            With Selection.Font
                                .Name = "Lucida Bright"
                                .Size = 9
                                .Strikethrough = False
                                .Superscript = False
                                .Subscript = False
                                .OutlineFont = False
                                .Shadow = False
                                .Underline = xlUnderlineStyleNone
                                .ThemeColor = xlThemeColorLight1
                                .TintAndShade = 0
                                .ThemeFont = xlThemeFontNone
                            End With
                            With Selection.Interior
                                .Pattern = xlNone
                                .TintAndShade = 0
                                .PatternTintAndShade = 0
                            End With
                            W_RecapG.Worksheets("Attente_Solde").Range("A2") = W_RecapG.Worksheets("TempsOS").Range("A" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                            W_RecapG.Worksheets("Attente_Solde").Range("B2") = W_RecapG.Worksheets("TempsOS").Range("B" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                    End If
                End If
            End If
        End If
        'If W_RecapG.Worksheets("Données_à_extraire").Range("E2") = "Production" Or W_RecapG.Worksheets("Données_à_extraire").Range("E2") = "Controle_Technique" Or W_RecapG.Worksheets("Données_à_extraire").Range("E2") = "Reprise_Production" Then
            If W_RecapG.Worksheets("Données_à_extraire").Range("F2") = "SOUMETTRE APPROBATION" And Not W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
                W_RecapG.Worksheets("Attente_Approbation").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("C2")
                W_RecapG.Worksheets("Attente_Approbation").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then
                    Rows(2).Insert
                    Range("A2:F2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Attente_Approbation").Range("A2") = W_RecapG.Worksheets("TempsOS").Range("A" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                    W_RecapG.Worksheets("Attente_Approbation").Range("B2") = W_RecapG.Worksheets("TempsOS").Range("B" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                End If
            End If

        If W_RecapG.Worksheets("Données_à_extraire").Cells(2, 2) Like "*OS-APT*" Then
            If W_RecapG.Worksheets("Données_à_extraire").Range("F2") = "SOUMETTRE APPROBATION" Then

            If W_RecapG.Worksheets("Etat des Activités").Range("B" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("C" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("D" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("E" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("F" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("G" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("H" & L) <> "" And _
            W_RecapG.Worksheets("Etat des Activités").Range("I" & L) <> "" Then
                W_RecapG.Worksheets("Attente_Approbation").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Données_à_extraire").Range("B2")
                W_RecapG.Worksheets("Attente_Approbation").Activate
                L = Range("A65536").End(xlUp).Row
                If L = 1 Then
                    Rows(2).Insert
                    Range("A2:F2").Select
                        With Selection.Font
                            .Name = "Lucida Bright"
                            .Size = 9
                            .Strikethrough = False
                            .Superscript = False
                            .Subscript = False
                            .OutlineFont = False
                            .Shadow = False
                            .Underline = xlUnderlineStyleNone
                            .ThemeColor = xlThemeColorLight1
                            .TintAndShade = 0
                            .ThemeFont = xlThemeFontNone
                        End With
                        With Selection.Interior
                            .Pattern = xlNone
                            .TintAndShade = 0
                            .PatternTintAndShade = 0
                        End With
                    W_RecapG.Worksheets("Attente_Approbation").Range("A2") = W_RecapG.Worksheets("TempsOS").Range("A" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                    W_RecapG.Worksheets("Attente_Approbation").Range("B2") = W_RecapG.Worksheets("TempsOS").Range("B" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
                End If
            End If
        End If
        End If

        W_RecapG.Worksheets("Données_à_extraire").Activate
        L = Range("B65536").End(xlUp).Row
        Rows(2).Delete

        'If W_Dev.Worksheets("Données_entrées").Range("O" & L) = "-" Then W_Dev.Worksheets("Données_entrées").Range("O" & L) = 0
        'If W_Dev.Worksheets("Données_entrées").Range("P" & L) = "-" Then W_Dev.Worksheets("Données_entrées").Range("P" & L) = 0
        'If W_Dev.Worksheets("Données_entrées").Range("Q" & L) = "-" Then W_Dev.Worksheets("Données_entrées").Range("Q" & L) = 0
        'If W_Dev.Worksheets("Données_entrées").Range("R" & L) = "-" Then W_Dev.Worksheets("Données_entrées").Range("R" & L) = 0
        'W_Dev.Worksheets("Données_entrées").Range("S" & L) = W_Dev.Worksheets("Données_entrées").Range("P" & L) + W_Dev.Worksheets("Données_entrées").Range("Q" & L) + W_Dev.Worksheets("Données_entrées").Range("R" & L)
    Next i
    If W_RecapG.Worksheets("Attente_Approbation").Range("A2").Text <> "" Then
        MsgBox "Approbation en attente"
        W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Attente_Approbation").Range("A2")
        W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Attente_Approbation").Range("B2")
        W_RecapG.Worksheets("Attente_Approbation").Range("C2") = W_RecapG.Worksheets("TempsOS").Range("D" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Approbation").Range("D2") = W_RecapG.Worksheets("TempsOS").Range("E" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Approbation").Range("E2") = W_RecapG.Worksheets("TempsOS").Range("C" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Approbation").Range("F2") = W_RecapG.Worksheets("TempsOS").Range("H" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
    End If

    If W_RecapG.Worksheets("Attente_Solde").Range("A2").Text <> "" Then
        MsgBox "Solde en attente"
        W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=1, Criteria1:=W_RecapG.Worksheets("Attente_Solde").Range("A2")
        W_RecapG.Worksheets("TempsOS").Range("A1").AutoFilter field:=2, Criteria1:=W_RecapG.Worksheets("Attente_Solde").Range("B2")
        W_RecapG.Worksheets("Attente_Solde").Range("C2") = W_RecapG.Worksheets("TempsOS").Range("D" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Solde").Range("D2") = W_RecapG.Worksheets("TempsOS").Range("E" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Solde").Range("E2") = W_RecapG.Worksheets("TempsOS").Range("F" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)
        W_RecapG.Worksheets("Attente_Solde").Range("F2") = W_RecapG.Worksheets("TempsOS").Range("G" & Worksheets("TempsOS").Range("A65536").End(xlUp).Row)

    End If
    W_RecapG.Worksheets("Etat des Activités").AutoFilterMode = False
    W_RecapG.Worksheets("Attente_Solde").AutoFilterMode = False
    W_RecapG.Worksheets("Attente_Approbation").AutoFilterMode = False
    W_RecapG.Worksheets("TempsOS").AutoFilterMode = False
    Application.EnableEvents = True
End Sub

Re,

désolé mais tes nombreuses lignes de code n'aident pas vraiment à la compréhension du sujet

Est-ce que tu aurais pas juste un codage a me proposer pour faire en sorte d'obtenir mes lignes de tableau en fonction de la date, expliquer dans mon premier message ?

Merci pour ta réponse

Re,

Je ne sais pas si ces lignes de code pourront t'aider mais j'essaye:

avoir la dernière ligne remplie dans une colonne :

ligFin = range("a" & rows.count).end(xlup).row

ceci te permettra de ne pas effacer les données déjà renseignées, il faut juste ajouter 1 à cette valeur pour écrire sur la première ligne vide qui suit.

Ensuite tu peux faire un filtre chronologique pour avoir les 7 derniers jours:

ActiveSheet.Range("$A$1:$A$5").AutoFilter Field:=1, Criteria1:= ">=10/05/2019", Operator:=xlAnd, Criteria2:="<=16/05/2019"

il faut ensuite gérer le critère 1 et le critère 2, en critère 2 tu mets Date, et en critère 1 tu mets Date - 6, ça donnerait:

ActiveSheet.Range("$A$1:$A$5").AutoFilter Field:=1, Criteria1:= ">=" & Date-6, Operator:=xlAnd, Criteria2:="<=" & Date

J'espère que ça te permet déjà de mieux y voir, si tu as d'autres questions précises je pourrais te fournir des bouts de code mais je ne pourrai pas directement modifier ton code principal...

Merci pour ta réponse, je pense que ça va beaucoup m'aider !

Si tu pouvais m'aider sur un minuscule petit point à part, ce serait super gentil :

Sur l' UserForm on y trouve la date du coup comme ceci : (

capture

Le code est donc celui ci :

Private Sub TextBox_Date_Change()   'Se lance lors de la saise de la date
    Dim strFormat As String
    Dim x As Integer
    x = Len(TextBox_Date)
    strFormat = "##/##/####"        'Force le format de la saisie à ##/##/####
    strFormat = Left(strFormat, x)
    If Not TextBox_Date Like strFormat Then TextBox_Date = Left(TextBox_Date, x - 1)
    UserForm1.Label10 = TextBox_Date.Value
End Sub
 

et

Private Sub CommandButton1_Click()      'Permet de passer à la date d'hier
    Dim x As Integer
    If Weekday(Now, vbMonday) = 1 Then  'Si on est lundi
        x = 3       'On va reculer de 3 jours
    Else    'Sinon (autre jours de la semaine)
        x = 1       'On recule de 1 jours
    End If
    CommandButton1.Visible = False                  'On cache le bouton pour reculer la date
    Label10 = Format(Now - x, "dd/mm/yyyy")         'La Date active prend la valeur d'aujourd'hui moins le nombre de jour defini au dessus
    CommandButton2.Visible = True                   'On affiche le bouton pour revenir a la date d' aujourd'hui
End Sub

et j'aimerai non pas reculer la date de 1 jours, mais reculer chaque jours sur une semaine .... c'est-à-dire grâce au flèche aller au 15/05, 14/05, 13/05 ect jusqu'au 9/05, (donc cliquer 7 fois sur la flèche) mais pas cliquer une fois et sauter les 7 jours d'un coup et passer du 16/05 au 9/05 si tu vois ce que je veux dire

Peux-tu m'aider ?

Merci pour ta reponse !

Re,

Je ne suis pas sûr de tout comprendre mais je vois des erreurs dans ton codage

    If Weekday(Now, vbMonday) = 1 Then

Ici tu regardes le numéro du jour de la date d'aujourd'hui, d'après moi tu devrais plutôt regarder la date qui se trouve dans le Label

CommandButton1.Visible = False                  'On cache le bouton pour reculer la date

si tu veux pouvoir cliquer plusieurs fois sur ton bouton de commande, il faut éviter de cacher le bouton dès que tu cliques dessus

Label10 = Format(Now - x, "dd/mm/yyyy")         'La Date active prend la valeur d'aujourd'hui moins le nombre de jour defini au dessus

ici je pense que tu devrais plutôt utiliser Label - 1 au lieu de Now - x

    CommandButton2.Visible = True                   'On affiche le bouton pour revenir a la date d' aujourd'hui

ici c'est pareil que pour l'autre ligne où le bouton est caché, je ne pense pas que ce soit une bonne idée de gérer l'affichage des boutons

En fait tu as essayer de refaire un contrôle qui existe déjà, tu as un objet qu'on appelle toupie qui contient une flèche à gauche et une à droite, dont tu peux fixer le maximum et le minimum, il resterait juste à faire Now - valeurToupie par exemple si tu tiens à utiliser Now

Si tu comptes garder les deux boutons séparés, le code donnera:

Private Sub CommandButton1_Click()
Label10 = Format(Label10 - 1, "dd/mm/yyyy")
End Sub

Tu auras peut-être besoin de convertir Label10 en date via CDate. D'ailleurs, pour le premier code que tu as montré, tu peux tester que ce qui est rentré est une date en utilisant isDate(), il te suffira ensuite de convertir la valeur avec Format(ladate,"dd/mm/yyyy") pour être sûr de la façon dont la date est écrite

Merci pour ton message,

Je vais regarder ça merci

Rechercher des sujets similaires à "historique incrementant date"