Augmenter chiffre de +1 chaque jour

Bonjour,

Je vais essayer d'expliquer ce que je souhaite faire.

J'ai un tableau qui dans lequel est exprimé les jours de stock et je souhaite que chaque jour cela augmente de 1. Dans la case F3 par exemple il y a le nombre 185 demain je voudrais que cela passe automatiquement à 186 et ainsi de suite pour toute la colonne.

Merci pour votre aide

capture ex

Bonjour,

Voici une piste !

Le code est à mettre dans le module du classeur car procédure événementielle Workbook_Open() :

Private Sub Workbook_Open()

    Dim Plage As Range
    Dim Cel As Range
    Dim Nom As Name
    Dim LaDate As Date
    Dim NBJour As Integer

    On Error Resume Next
    Set Nom = ThisWorkbook.Names("Ajout")

    'si le nom n'existe pas, le crée et le rend invisible dans le gestionnaire
    If Err.Number <> 0 Then

        ThisWorkbook.Names.Add "Ajout", Date, False

    Else
        'sinon, récupère la date stockée dans le nom
        LaDate = CDate(Right(Nom, Len(Nom) - 1))

        'soustrait pour obtenir le nombre de jours à incrémenter (si l'ouverture n'a pas lieu tous les jours)
        NBJour = Date - LaDate

        'stocke la nouvelle date dans le nom
        ThisWorkbook.Names.Add "Ajout", Date, False

    End If

    'si positif, incrémente toutes les cellules de la colonne F
    If NBJour > 0 Then

        With Worksheets("Feuil1"): Set Plage = .Range(.Cells(3, 6), .Cells(.Rows.Count, 6).End(xlUp)): End With

        For Each Cel In Plage

            Cel.Value = Cel.Value + NBJour

        Next Cel

    End If

    'enregistre le classeur, attention, se doit être un .xlsm !
    ThisWorkbook.Save

End Sub

Le code contrôle si le nom "Ajout" existe dans le classeur, si il n'existe pas, il est créé puis la date du jour y est stockée, le nom est invisible dans le gestionnaire. Si le nom existe, le code récupère la date qui y est stockée et la soustrait à la date du jour d'ouverture du classeur ensuite, si le résultat est positif, toute la colonne F est incrémenté du nombre de jours qui sépare la dernière ouverture de l'actuelle car si tu veux une incrémentation de 1 pour chaque jour, il faut prendre en compte les jours où le classeur peut ne pas être ouvert sinon, si tu veux incrémenter de 1 à l'ouverture sans tenir compte des jours qui séparent les ouvertures, il te suffit de modifier cette ligne de code :

Cel.Value = Cel.Value + NBJour

de cette façon :

Cel.Value = Cel.Value + 1

Tu n'auras pas le résultat le jour même, il te faudra attendre le lendemain mais pour que le nom soit créé, il te faut malgré tout fermer et ré ouvrir le classeur après que tu ais collé le code et enregistré en . xlsm !

Bonjour à tous,

Il suffit de comparer la date du jour avec la date initiale de prise en compte du stock.

Exemple :

Date init le 05/02/2019, en I3

Stock en F3 avec la formule =AUJOURDHUI()-I3

Le résultat évoluera avec la date du jour.

Cordialement.

Rechercher des sujets similaires à "augmenter chiffre chaque jour"