DATE AUTOMATIQUE SANS MISE A JOUR!

norbrodwin Messages postés 12 Date d'inscription   Statut Membre Dernière intervention   -  
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je voudrais insérer dans une cellule excel, une date figée, automatiquement sans qu'elle soit mise à jour à chaque ouverture du fichier.

Cette date doit correspondre à la date de création du fichier (ou de la copie).

Bien entendu cette date ne correspond pas à "=aujourd'hui()" :)

Merci beaucoup pour votre aide par avance.
A voir également:

6 réponses

Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   7 345
 
Bonjour,

Ce n'est pas du tout hi tech, ni geek, comme solution... Personnellement, je saisirais cette date et tout autre paramètre invariant "à la main" lors de la création du fichier ou de sa copie.
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

Ouvrir l'éditeur VBA (Alt + F11)
Selectiuonner This Worbook dans l'arborescence et dans la page blanche copier coller ce code qui enregistrera dans une cellule la date à chaque sauvegarde

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
sheets("Feuil1").Range("A1")= Date  'met la date du jour en A1 de la Feuil1 ADAPTER reference cellule et nom de la feuille
End Sub


Cflmnt
0
norbrodwin Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Merci beaucoup pour la reponse.
Une petite précision :
La date que je voudrais inserer automatiquement est celle de la création du fichier et (ou du changement de nom de fichier quand on fait enregistrer sous) et non pas la date apres chaque modification de fichier (sauvegarde).

Merci d'avance pour votre aide.
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Bonjour

Lors de la création du fichier tu mets la date manuellement et pour qu'elle change à chaque Enregistrer sous la macro dans This Workbook sera :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If SaveAsUI=True then sheets("Feuil1").Range("A1")= Date  'met la date du jour en A1 de la Feuil1 ADAPTER reference cellule et nom de la feuille
End Sub


Cdlmnt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
norbrodwin Messages postés 12 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
L'idée est que la date demeure inchangeable :

J'ai un fichier type (modele) qui est utilisé pour chaque nouvelle entrée de commande.
Ex : le 01/12 j'ai une commande à saisir
-j'ouvre le model
-je saisis ma commande
-la date doit s'implementer automatiquement (je suis confornter à des oublis systematique de saisie de date manuellement)
-je fais un enregistrer sous (pour garder le model type vierge)
-le 02/12 j'accède à nouveau à ce meme fichier de la nouvelle commande du 01/12 (pour x raison : consultation, modification ...)
-la date ne doit pas etre modifiee, meme si je fais enregistrer en fermant le fichier.

J'espere avoir été clair avec cet exemple :)

J'espere avoir une solution pour me resoudre ce probleme :(
0
via55 Messages postés 14512 Date d'inscription   Statut Membre Dernière intervention   2 746
 
Effectivement ce n'est pas la même problématique !

La procédure en fait doit être :
Si on ouvre le fichier modèle la date du jour doit s'inscrire automatiquement
A la fermeture du nouveau fichier la date reste normalement inscrite
Si on ouvre le nouveau fichier la date doit rester inchangée
donc il faut jouer à l'ouverture du classeur en fonction du nom du classeur

La macro n'est pas BeforeSave mais Open (toujours à mettre dans This workbook)

Private Sub Workbook_Open()
If ThisWorkbook.Name = "Modèle.xlsm" Then Sheets("Feuil1").Range("A1") = Date
End Sub


Adapter nom du fichier avec son extension, nom de la feuille et référence cellule

Cdlmnt
0