Lier une valeur variable à un calendrier.

Résolu
dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   -  
dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
J'ai un document Excel avec dans une feuille un total de valeurs qui varie tous les jours et un'autre feuille avec des dates. Je voudrais que la valeur de la première feuille soit enregistrée automatiquement tous le jours dans le jour correspondent de la deuxième.
Merci pour votre aide
DIngo123

1 réponse

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour, peux-tu partager ton fichier?
    je pense qu'il est assez simple de faire un peu de VBA qui, chaque fois que tu ouvres ou fermes le fichier, sauve automatiquement le total pour le jour en cours.
    est-ce cela que tu cherches?
    0
    1. dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour, c'est absolument ça!
      Comment partager le fichier? Merci
      Je voudrais que la valeur en F2 de la "Feuille 2" soit automatiquement copier dans la colonne G de la "Feuille 1" au jour respectif
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention  
         
        tu partages ton fichier sur internet (cjoint, google drive, ...) et tu communiques le lien ici.
        0
    2. dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention  
       
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention  
         
        je suggère de faire ainsi:
        - sauvegarder ton fichier comme .xlsm, de façon à pourvoir y créer du vode VBA
        - ouvrir le fichier xlsm, faite ALT-F11, double cliquer sur "thisworkbook", et ensuite copier/coller le code ci-dessous dans la fenêtre de droite.
        - sauvegarder et fermer
        Option Explicit
        
        Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
        Call copierF2
        End Sub
        
        Private Sub Workbook_Open()
        Call copierF2
        End Sub
        Private Sub copierF2()
        Dim sh As Worksheet
        Dim lig As Range
        Dim cejour As Date, unjour
        cejour = Int(Now)
        Set sh = ThisWorkbook.Sheets("Feuille 1")
        For Each lig In sh.Rows
            unjour = lig.Cells(1, 1)
            If IsDate(unjour) Then
                If Int(unjour) = cejour Then
                    lig.Cells(1, 7).Value = ThisWorkbook.Sheets("Feuille 2").Cells(2, 6).Value
                    Exit For
                End If
            End If
        Next lig
        End Sub
        
        

        Ensuite, à chaque sauvetage et à chaque ouverture du fichier, la valeur en F2 sera sauvée comme souhaité.
        0
    3. dingo123 Messages postés 41 Date d'inscription   Statut Membre Dernière intervention  
       
      Merci pour l'explication très claire , tout fonctionne à merveille, bravo!!!
      0