Bien le bonjour Patricktoulon et déjà merci pour ta rapide réponse !
1_ En effet, il y a bien appel d’une fonction (xlam) MAIS…s’il n’y a pas eu modification de la date de dernier enregistrement, cette fonction ne modifie donc pas vraiment la date qui était déjà présente et identique dans la cellule comportant la formule =SavDate() du fichier PERSO.xlam.
Ne pouvons-nous, dès lors, estimer qu’il n’y a PAS eu de modification effective et que, par conséquent, Excel ne devrait normalement pas demander s’il faut « enregistrer les modifications » qui n’ont effectivement pas eu lieu ??
(Ce qui ne serait évidemment pas le cas pour une fonction du type =Today() qui, elle, change bien de valeur lors de chaque nouveau jour.)
2_ Bon, ben alors…orientons-nous vers l’option d’un fichier Xlsm…
2.1 Création d’une MACRO dans ThisWorkbook:
Private Sub Workbook_Open()
Sheets(1).[A1] = "Date de création : " _
& Format(ActiveWorkbook.BuiltinDocumentProperties(11), _
"dd/mm/yyyy")
Sheets(1).[E1] = "Dernière Version : " _
& Format(ActiveWorkbook.BuiltinDocumentProperties(12), _
"dd/mm/yyyy hh:mm")
End Sub
Cette Macro formate aussi les cellules au format Date et Heure. --->BIEN CA !
Constatation : MAIS même si on n’a rien modifié dans le document, Excel demande pourtant si on veut enregistrer les « modifications » ! ! --->PAS BIEN CA !
2.2 Alors créons et essayons plutôt un MODULE « Fonction » :
Function LastSaved() As Date
LastSaved = ActiveWorkbook.BuiltinDocumentProperties("Last Save Time")
End Function
Constatation : AH, cette fonction ne provoque pas de demande d’enregistrement mais on constate qu’aux prochaines ouvertures du fichier les infos ne sont plus à jour !. --->PAS BIEN CA !
Questions restant à solutionner :
---------------------------------------------
1) Comment empêcher le message "Voulez-vous enregistrer les modifications" si l'utilisateur n'a pas fait de modifs ?
1.1 Lors de l'utilisation de la Macro de l'Objet ThisWorkbook ?
1.2 Lors de l'utilisation de la fonction SavDate() placée dans le module PERSO.xlam
2) Quel code VBA ajouter dans les fonctions SavDate() de PERSO.xlam et LastSaved() du Module du fichier pour que la cellule quelconque où elles seront écrites soient formatées automatiquement en Date et Heure ?
Le but recherché est d’ici avoir au-dessus du fichier la date de la dernière version du document.
Avec mon Word_2010, c’est plus facile car le champ SaveDate est implémenté dans l’Insert QuickPart ! Dommage que Excel_2010 n’a pas cette possibilité.
Merci pour votre disponibilité.