XL 2013 Sauvegarde données avec changement de date

Tomobilus

XLDnaute Nouveau
Bonjour le forum,

J'ai conçu un calendrier dans lequel je souhaiterais dès que je change de DATE (mois ou année) que les données dans mon tableau s'enregistre et soient liées à la date pour que je puisse y revenir.

Exemple : le 14 novembre 2018, dans AI Métropole; j'inscrit dans Module=EO1, Site=Bordeaux, Noms Participants=... etc...
Si je passe au mois de Décembre et que j'inscrit d'autres données et que je reviens sur Novembre je veux retrouver les données enregistrées du 14 novembre 2018


Je ne sais pas si je me suis bien fait comprendre...

(Petite précision, les données à enregistrer vont de C5 à AA35)

Voici le fichier en question ci-joint.

Je vous remercie d'avance pour votre aide.
 

Pièces jointes

  • Calendrier Programmation.xlsx
    19.2 KB · Affichages: 22

job75

XLDnaute Barbatruc
Bonjour Tomobilus,

Voyez le fichier joint avec la feuille "Mémoire" qui mémorise les données de chaque mois de 2018 à 2029.

Les macros dans le code de la feuille "Calendrier" (clic droit sur l'onglet et Visualiser le code) :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With Sheets("Mémoire")
    .Cells(Application.Match([A5], .[A:A], 0), 2).Resize(31, 25) = [C5:AA35].Formula
End With
Columns.AutoFit 'ajustement largeurs
End Sub

Private Sub Worksheet_Calculate()
Application.EnableEvents = False 'désactive les évènements
With Sheets("Mémoire")
    [C5:AA35] = .Cells(Application.Match([A5], .[A:A], 0), 2).Resize(31, 25).Formula
End With
Application.EnableEvents = True 'résctive les évènements
End Sub
La feuille "Mémoire" sera bien sûr masquée.

Pour tester changez de mois puis revenez à novembre 2018.

A+
 

Pièces jointes

  • Calendrier Programmation(1).xlsm
    73.2 KB · Affichages: 31

job75

XLDnaute Barbatruc
Re,

Prendre en considération d'éventuelles formules n'est pas une bonne idée.

Il ne faut copier que les valeurs :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With Sheets("Mémoire")
    .Cells(Application.Match([A5], .[A:A], 0), 2).Resize(31, 25) = [C5:AA35].Value 'copie les valeurs
End With
Columns.AutoFit 'ajustement largeurs
End Sub

Private Sub Worksheet_Calculate()
Application.EnableEvents = False 'désactive les évènements
With Sheets("Mémoire")
    [C5:AA35] = .Cells(Application.Match([A5], .[A:A], 0), 2).Resize(31, 25).Value 'copie les valeurs
End With
Application.EnableEvents = True 'réactive les évènements
End Sub
Utilisez donc ce fichier (3).

A+
 

Pièces jointes

  • Calendrier Programmation(3).xlsm
    71.8 KB · Affichages: 41
Dernière édition:

caca1995

XLDnaute Nouveau
Bonjour,
votre planning est très bien et utile ! j'aimerais faire le même mais avec les date en horizontal. j'ai essayé de modifier votre code VBA a plusieurs reprise mais sans succès! pourriez- vous m'aider svp ?
en gros je dois faire un planning annuel dynamique pour un technicien de maintenance sur ses intervention sur différentes machines dans différents semaine de l'année!
j'ai besoin d'aide svp
 

azertyazertyazerty

XLDnaute Nouveau
Bonjour,

J'aurais besoin de votre aide, car j'ai réalisé un calendrier annuel pour pouvoir noter toutes mes heures de travail au jour le jour.
j'ai copier / coller le code vba de cette page sur mon fichier dans la feuille "année" pour que celles-ci soient archiver dans la feuille "archives".
Le problème est que dès que je souhaite entrer une donnée dans ma page "année", soit :
- elle s'efface aussitôt, Impossible d'écrire quoi que ce soit.
soit :
- l'entrée va rester, mais impossible de l'effacer (à moins de rester appuyer plusieurs longues secondes sur suppr).

La zone de sélection est entre C3 : Q375 dans la feuille "année"

Dans l'attente de vos réponses
 

Pièces jointes

  • 2022.xlsm
    276.6 KB · Affichages: 9

Discussions similaires

Statistiques des forums

Discussions
311 730
Messages
2 081 989
Membres
101 856
dernier inscrit
Marina40