Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Mémoriser une valeur qui change tous les jours dans un autre tableau

  • Initiateur de la discussion Initiateur de la discussion Dréa
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Dréa

XLDnaute Nouveau
Bonjour,
J'ai une feuille Excel où je saisie tous les jours des données et qui alimente une autre feuille qui garde toutes les valeurs du mois. Le problème est que dès que je change de jour, les données de la veille s'effacent.
Pourriez-vous m'aider à faire en sorte qu'elles restent ?
Merci d'avance.
PS: Actuellement ma deuxième feuille est alimentée seulement avec des fonctions SI
 
Bonjour Dréa et bienvenu sur XLD,
Avec des formules vous ne pourrez pas mémoriser des données passées.
J'ai bien peur qu'il vous faille passer par du VBA qui ira copier les valeurs en "dur". Si le VBA ne vous reboute pas.
Mai sans fichier test, difficile d'en dire plus.
 
Bonjour et merci de me répondre!
Je ne suis pas du tout contre le VBA, j'ai essayé, mais débutant juste, je n'y parvient pas.
Je vous joint mon fichier.
En fait, les seules cellules qui sont remplies, sont : B9, F9, J9.... et alimentent le reste des tableaux des différentes feuilles.
Là où je bloque, c'est que ces cellules sont remplies tous les jours et renvoyées dans les tableaux correspondant des autres feuilles, mais dès que le jour change les données disparaissent de tous mes tableaux!
Suis-je assez claire ?
 

Pièces jointes

Bonjour Dréa,
Un essai en PJ avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 2 Then Exit Sub
    If Not Intersect(Target, Range("A9:AH9")) Is Nothing Then
        On Error GoTo Fin
        If Target = "Nombre" Or Target = "" Then Exit Sub       ' Exit si Cellule non concernée
        NomFeuille = Cells(7, Target.Column) ' Les noms de feuilles sont cahchées sous les boutons en police blanche
        With Sheets(NomFeuille)
            Ind = Application.Match([DateEnCours], .[B:B], 0)   ' Récupére la ligne de la feuille concernée où se trouve la date courante
            .Cells(Ind, "C") = Target                           ' Ecrit la valeur sur cette ligne colonne C
        End With
    End If
Exit Sub
Fin:
MsgBox "Date non trouvée dans la feuille " & NomFeuille         ' Message si date non trouvée dans la feuille
End Sub
la macro s'exécute lorsqu'on remplit une cellule de la ligne 9.
A noter que sous chaque bouton j'ai mis le nom de la feuille concernée pour simplifier ( et en police blanche ), donc si vous rajoutez un bouton pensez aussi à rajouter le nom.
Si la date n'est pas trouvée dans la feuille alors j'émets un message d'alerte.
 

Pièces jointes

Merci énormément, bonne journée!!
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
892
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…