> Tous les forums > Forum Bureautique
 Word insérer date du jour dans nom du fichierSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
vivaverdi
  Posté le 05/02/2015 @ 09:02 
Aller en bas de la page 
Petit astucien

Bonjour à toutes zé à tous !

Pratiquant la généalogie, je mets mes données à jour quotidiennement ou presque .

Je saisis d'abord les infos dans un fichier Word 2007 que j'aimerais intituler {Saisie en cours du "jour"}

J'aimerais que "jour" soit une macro qui, forcément, affichera le jour de saisie qu'il soit contigu ou non.

Cela est-il possible ? Et, si oui, comment l'afficher ?

Merci de l'attention que vous porterez à mon questionnement.

Fulup

Publicité
w36xb2w
 Posté le 05/02/2015 à 09:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour

ne pas cocher

ZenJP
 Posté le 05/02/2015 à 09:50 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

On accède aux champs de type automatique par Insertion>>Champ
(Pour 2007 => Insertion>>Quickpart>>champ)

Tu choisis le champ que tu veux

Dans ton cas DATE (date du jour), tu as aussi CREATEDATE (Date de création) qui ne modifiera pas ton document si tu reviens dessus ultérieurement

ZenJP
 Posté le 05/02/2015 à 10:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Anonyme a écrit :

Salut

J'avais compris qu'il s'agissait de mettre automatiquement

la date dans le nom du fichier .doc

Anonyme

Anonyme

Ah oui, tu as peut-être raison

ferrand
 Posté le 05/02/2015 à 11:36 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

J'avais compris qu'il s'agissait de mettre automatiquement

la date dans le nom du fichier .doc

C'est ce que j'ai compris aussi.

Ça ne devrait pas présenter de difficulté, à la fermeture du document et/ou lors d'un enregistrement, de recomposer le nom avec la date du jour pour l'enregistrer.

Je laisse aux familiers de Word, n'ayant jamais pris la peine d'assimiler le modèle objet de Word...

vivaverdi
 Posté le 05/02/2015 à 16:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour mes amis !

Eh oui, je souhaite que la date du jour sous la forme AAMMJJ se mette directement dans le nom du fichier.

Exemple :

Saisie du jour 150105

Quand je quitte Word, la macro affiche ce 150105 directement dans le nom de sauvegarde.

Bon, vous m'direz que je suis un peu fainéant, après tout, je pourrais la taper directement.

J'imprime des tableaux hiérarchisés dont la 1ère ligne comporte le chemin du fichier

ainsi que le jour de la dernière saisie ! Ah ben tiens en écrivant cela j e m'dis que j'ai la réponse.

Bon, excusez-moi. Je vais relire Frédéric Dard et Michel Audiard ainsi que Pierre Desproges sur ce qu'ils disent

sur les cons ! Alors là, j'en tiens une ! Mon impulsivité... L'âge aussi peut-être...

Mi-février, j'entre dans ma dernière année de sexagénaire ! Quel âge aurais-je ?

Remarquez, ici, dans les années début 2000 je crois qu'il y avait un Astucien octogénaire ou presque, Titin

si ma mémoire est bonne.

Merci encore à vous qui avez, hélas, perdu qq secondes de votre temps !

marsouin
 Posté le 05/02/2015 à 18:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Salut Anonyme

Je crois que tu as été un peu trop rapide sur ce coup-là, si tu le relis bien, il se moque de lui-même et de personne d'autre.

Olman
 Posté le 05/02/2015 à 18:31 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir

Il ya quelques temps, je m’étais bricolé une macro pour enregistrer dans un dossier de sauvegarde de tous mes documents word toutes les évolutions dans le temps (jour et heure) de mes fichiers word.

Par exemple chaque fois que j’ouvre (et que je referme) le fichier "Macro word sauvegarde.docx", un enregistrement daté est enregistré sous la forme

" Macro word sauvegarde_20150121_1204.docx",
"
Macro word sauvegarde_20150205_1809.docx" …

La macro que j’utilise est la suivante (peut-être pas terriblement correcte pour un puriste) mais les spécialistes du forum pourront t’indiquer comment procéder de façon plus orthodoxe :

Sub AutoOpen()

Dim strFichierA, strFichierB, strFichierC, strFichierD, strFichierE, strFichierF, strFichierG, strDate, strTime

ActiveDocument.Save

strFichierA = ActiveDocument.Name

strFichierB = ActiveDocument.FullName

strDate = "_" & Format(Date, "yyyymmdd")

strTime = "_" & Format(Time, "hhmm")

' Trouve la position de l'extension

intPos = InStrRev(strFichierA, ".")

' Recherche extension

strFichierD = Mid(strFichierA, intPos, 5)

' Datation du fichier

strFichierE = Left(strFichierA, intPos - 1)

strFichierF = strFichierE & strDate & strTime

strFichierG = strFichierF & strFichierD

' Emplacement de la sauvegarde

strFichierC = "T:\Sauvegardes Word\" & strFichierG

' Sauvegarde

ActiveDocument.SaveAs FileName:=strFichierC

ActiveDocument.SaveAs FileName:=strFichierB

End Sub

Bon courage

Nota: l'age ne fait rien à l'affaire : j'aurai 75 ans demain !

ferrand
 Posté le 05/02/2015 à 20:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

et bon anniversaire Olman

Effectivement, ta macro peut je pense être adaptée aux besoins de vivaverdi et surtout simplifiée puisque ses besoins sont nettement plus limités.

Si j'ai bien compris, il souhaite que le nom du fichier incorpore la date, et que celle-ci soit mise à jour chaque jour.

Après avoir tout de même jeté un petit oeil dans Word, j'ai noté qu'il n'y avait pas de procédure d'évènement Save (à l'enregistrement). On dispose par contre des évènement Open et Close (ouverture et fermeture). Ce qui me paraît répondre du mieux à la question serait de programmer la procédure :

Private Sub Document_Open()

[NB- Les macros Auto_Open ou Auto_Close sont des versions anciennes remplacées depuis longtemps maintenant par les procédures évènementielles.]

Il suffirait donc de récupérer le nom du fichier à l'ouverture, remplacer la partie date et le réenregistrer sous le nom modifié. Les enregistrements suivants se feraient sous le nouveau nom naturellement.

vivaverdi
 Posté le 05/02/2015 à 21:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
marsouin a écrit :

Salut Anonyme

Je crois que tu as été un peu trop rapide sur ce coup-là, si tu le relis bien, il se moque de lui-même et de personne d'autre.

Bonsoir,

En effet Marsouin, je me moque de moi-même ! Un défaut ? Une qualité ? Io no lo sé !

Quant à savoir que ce sont des bénévoles qui aident leur "prochain", je ne suis qd même pas né de

la dernière pluie. J'ai passé des heures et des heures sur PCA avec une bande d'astuciens éminemment

sympathiques dont deux psdos slmt me reviennent, mon compatriote Kormoran (tiens encore la mer !)

et une délicieuse alsacienne Vérok, peut-être Véronique ? Ah si, il y avait Matata et un expert en informatique...

Bon, ça fait ancien combattant ! Fermons l'ban !

Rogerd
 Posté le 06/02/2015 à 09:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Sans rapport avec la question, mais vu les informations personnelles données, je suggère la création d'un "club 3ème age".

L'intérêt serait de faire rigoler les gamins (moins de 70 ans) et pour eux de faire leur BA en venant corriger nos oublis (et oui, Aloys est derrière la porte).

nestor34
 Posté le 06/02/2015 à 10:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Rogerd a écrit :

Sans rapport avec la question, mais vu les informations personnelles données, je suggère la création d'un "club 3ème age".

salut l'ancien (+1 jour)

ton idée n'est pas mauvaise, s'il n'y a pas trop d'astuciens tricheurs, il devrait y avoir foule.

à toi l'honneur de la création.

ferrand
 Posté le 06/02/2015 à 11:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Tu n'as pas confirmé mon interprétation de l'objectif recherché, mais tu ne l'as pas infirmé non plus , donc essaie ceci :

Private Sub Document_Open()
Dim nd$, add$, ndd$, i%
nd = ActiveDocument.Name
For i = 1 To Len(nd)
If Not IsNumeric(Mid(nd, i, 1)) Then Mid(nd, i, 1) = " "
Next i
add = Trim(nd)
If IsNumeric(add) And Len(add) = 6 Then
nd = ActiveDocument.FullName
ndd = Format(Year(Date) Mod 100, "00") & Format(Month(Date), "00") & Format(Day(Date), "00")
i = InStr(nd, add)
If i > 0 Then
Mid(nd, i, 6) = ndd
ActiveDocument.SaveAs2 nd
MsgBox "Nom du document actualisé à la date du jour", vbInformation, "Actualisation"
Exit Sub
End If
End If
MsgBox "Date non détectée dans le nom du document. Le nom n'a pas été actualisé à la date du jour.", _
vbCritical, "Actualisation"
End Sub

Cette macro est à copier et coller dans le module ThisDocument de ton document Word.

[Faire Alt+F11 pour ouvrir l'éditeur VBA, double-cliquer dans le volet gauche sur ThisDocument pour ouvrir le module, y coller la macro.]

Enregistrer le document : si en .docx, devra être enregistré en .docm. Le rouvrir, pour constater que la date incorporée dans le nom du document a été modifiée à l'ouverture et le document enregistré sous ce nouveau nom dans le même dossier. Le document sous son ancien nom, demeure...

Cobra1234
 Posté le 06/02/2015 à 13:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

vivaverdi

Quel plaisir de lire quelqu'un qui peut se moquer de lui-même ... et de belle manière encore ...

Bien merci pour ce bon moment.

Un grand bonjour aux "anciens" de ce forum

w36xb2w
 Posté le 06/02/2015 à 14:41 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour

3° age j'en fais partie alors.

laregie
 Posté le 06/02/2015 à 17:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
w36xb2w a écrit :

Bonjour

3° age j'en fais partie alors.

Bonjour,

Malheureusement moi aussi ...

vivaverdi
 Posté le 12/02/2015 à 09:23 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour mes amies(is), hé hé...

Absent une semaine pour cause de visite à grand malade loin de mon home, je vais essayer d'appliquer ce que propose Ferrand. VU que pour moi c'est du langage néanderthalien (pour ne pas froisser ceux qui ont traversé la Mer rouge à pied comme la Chine aussi -célèbre contrepèterie !), je vais "essayer" de développer le texte de Ferrand sous forme d'algorithme en bon français...

Bougre de cornegidouille, ça a l'air bien âpre !

Une vaseuse : tout cela, pour moi, n'est pas clair mon Ferrand

Dehors !! J'y vais (dans les Ardennes)

ferrand
 Posté le 12/02/2015 à 12:50 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

tout cela, pour moi, n'est pas clair mon Ferrand

Tu as juste à tester... Pas à pas :

1) Tu ouvres ton fichier...

2) Tu ouvres l'éditeur VBA : onglet Développeur > Visual Basic

Pour aller plus vite (ou si l'onglet Développeur n'est pas affiché [dans les Options, case à cocher pour l'afficher]) tu fais la combinaison de touches Alt+F11 qui ouvre l'éditeur (sur toutes versions).

3) Dans l'éditeur, si tu ne l'as jamais ouvert (ou n'a pas modifié son affichage par défaut) tu verras un seul volet affiché à gauche de la fenêtre, c'est l'explorateur de projets.

Si tu n'as qu'un fichier d'ouvert, tu n'auras qu'un seul projet dans la liste des projets, qui porte le nom de ton fichier. Sous ce projet, tu repères le module ThisDocument et tu fais un double-clic dessus pour l'ouvrir.

Comme tu le constateras, il s'agit d'une simple feuille blanche...

4) Tu copies la macro (dans mon post précédent), et tu viens la coller sur cette feuille :

Tu obtiendras ceci.

4bis) Là si tu veux fignoler, tu peux rétablir l'indentation du code pour le rendre plus lisible (l'indentation n'est malheureusement pas conservée dans les posts de PCA).

Ça se fait pour chaque ligne en utilisant la touche tabulation. Cela permet de repérer immédiatement les boucles et les conditions, et leurs imbrications éventuelles...

Mais ceci peut attendre ! Une fois la macro collée, tu fermes l'éditeur VBA.

5) Tu enregistres ton fichier en utilisant Enregistrer sous... et tu choisis Document prenant en charge les macros pour l'enregistrer.

En effet, ton fichier contient maintenant une macro et ne pourra pas être enregistré avec l'extension .docx (ou il le sera mais sans la macro).

Ton fichier enregistré avec l'extension .docm, tu le fermes.

NB- Conformément à tes spécifications, le nom de ton fichier doit contenir une date sous la forme aammjj (et qui ne soit pas la date du jour, pour que tu puisses tester qu'il soit à l'ouverture réenregistrer automatiquement avec la date du jour).

6) Tu ouvres le fichier que tu viens de fermer. La macro que tu y as incorporée est ce qu'on appelle une macro évènementielle, qui se lancera d'elle-même lorsque l'évènement pour lequel elle a été prévue survient. Ici il s'agit de l'ouverture du document, elle s'exécutera donc dès ouverture, une fois que tu auras accepté l'activation des macros (si les macros sont désactivées, la macro ne pourra pas s'exécuter...)

La macro va chercher la date dans le nom du fichier, la remplacer, et enregistrer le fichier sous son nom actualisé. Tu pourra alors vérifier que le nom a changé et que dans le dossier d'enregistrement du document, tu as bien le document enregistré sous ce nouveau nom, et également sous l'ancien nom qui demeure (tant que tu ne l'auras pas détruit). Si la macro ne trouve pas la date dans le nom du fichier, elle t'en informe...

Voilà !

Gabrilou
 Posté le 12/02/2015 à 17:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Tous,

La demande de vivaverdi m'intéresse. J'ai donc copié la macro de Ferrand dans ThisDocument comme expliqué.

J'ai nommé mon document TestdateFerrand 150105.docm

J'ai enregistré sous ce nom et ouvert le fichier.

À l'ouverture du fichier, j'ai un message d'erreur :

Erreur d'exécution 438
Propriété ou méthode non gérée par ce objet

à la ligne suivante:

ActiveDocument.SaveAs2 nd



Que faut-il corriger pour que cette macro fonctionne ?

Merci

vivaverdi
 Posté le 12/02/2015 à 17:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Purée, Ferrand, t'es un p'tit génie (sans bouillir qd même, quoique, moi, les macros, VBA etc, ça me fait bouillr !)

Ça fonctionne du feu de dieu !

J'ai :

mis à la date de mardi,

sgdé le nouveau doc,

remis la date de ce jeudi,

réouvert le document.

Et là, le miracle se produisa (trouver le sketch de Smaïn...)

Bon, commbien de kilos de patates bretonnes j't'envoie ?

Tu préfères des galettes ? Tiens, des Traou Mad de Pont-Aven en boîte métallique

parce que en carton, tu manges les houit en 5 minutes.

Un très grand merci !

Il faudrait que je vienne plus souvent sur PCA !!

Euh dois-je passer en résolu car un autre astucien semble désirer en savoir plus ?????

Gabrilou
 Posté le 12/02/2015 à 17:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

vivaverdi, tu as de la chance toi ! Je n'ai peut-être pas tout compris, quoique...

Tu ne pourrais pas m'envoyer ton fichier, qui contiendrait juste avec la macro ?

Si ça te tente.

Merci d'avance

vivaverdi
 Posté le 12/02/2015 à 17:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Salut Gabrilou !

Euh.... demain, c'est vendredi 13, tu veux pas attendre ???

Tu sais, je n'ai fait qu'un copier-coller du texte de Ferrand.

Peut-être est-ce au niveau de quitter VBA où tu n'aurais pas cliquer au bon endroit

car, j'ai été hésitant à ce niveau-là...

Il faudrait que je refasse la manoeuvre en notant toutes les manip' que j'exécute (Anjou, feu !)

Ah la la, je deviens de plus en plus lourd.

J'ai retrouvé le sketch de Smaïn : Jeannot Lapin

Ça te mettra un peu de baume au coeur

La patience est l'art d'espérer. Vauvenargues...

Gabrilou
 Posté le 12/02/2015 à 19:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Anonyme a écrit :

Salut

Quelle version de WORD utilises tu ? Idem pour le Framework ?

Anonyme

Anonyme

J'en ai tout un tas.

Les plus récents Microsoft.Net Framework 4 Client Profile et Microsoft.Net Framework 4 Extended

Est-ce que cela te suffit comme informations ?

Merci



Modifié par Gabrilou le 12/02/2015 19:36
ferrand
 Posté le 12/02/2015 à 19:51 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Gabrilou : essaie en supprimant le 2 > ...SaveAs...

SaveAs2 est certainement une méthode trop récente...

vivaverdi : merci pour tes attentions

Gabrilou
 Posté le 12/02/2015 à 19:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Très Cher Ferrand

Tu es le meilleur ! C'était la bonne solution.

Un gros merci !

vivaverdi
 Posté le 13/02/2015 à 11:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour vous !

Enfin, il pleut sur la Bretagne ! Ça me manquait !!!

Bon, la macro fonctionne.

Mais comment faire pour la retrouver sur les autres fichiers ?

Dois-je refaire la démarche à chaque fois ou bien la macro est-elle à récupérer dans un dossier ?

Merci d'avance et so sorry du "dérangement" que je peux vous causer !

ferrand
 Posté le 13/02/2015 à 14:08 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Mais comment faire pour la retrouver sur les autres fichiers ?

Quels autres fichiers ?

Tu as parlé d'un fichier que tu dupliques tous les jours. La macro y demeure...

S'il y a autre chose, faut poser le problème !

Gabrilou
 Posté le 13/02/2015 à 15:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Tous,

Je comprends qu'il voudrait que cette macro soit active à chaque nouveau document créé.

Si c'est le cas, il faut créer un modèle.

Créer un modèle

Vous pouvez commencer avec un document vide et l'enregistrer en tant que modèle ou vous pouvez créer un modèle basé sur un document ou un modèle existant.

Commencer avec un modèle vide

  1. Cliquez sur le bouton Microsoft Office Image du bouton Office, puis sur Nouveau.

  2. Cliquez sur Document vierge puis cliquez sur Créer.

  3. Apportez les modifications souhaitées aux marges, au format du papier et à son orientation, aux styles et aux autres formats.

    Vous pouvez également ajouter des instructions, des contrôles de contenu tels qu'un sélecteur de dates et des graphismes à afficher dans tous les nouveaux documents basés sur le modèle.

  4. Cliquez sur le bouton Microsoft Office Image du bouton Office, puis sur Enregistrer sous.

  5. Dans la boîte de dialogue Enregistrer sous, cliquez sur Modèles approuvés.

  6. Attribuez un nom de fichier au nouveau modèle, sélectionnez Modèle Word dans la liste Type de fichier puis cliquez sur Enregistrer.

    Remarque Vous pouvez également enregistrer le modèle en tant que Modèle Word prenant en charge les macros (fichier .dotm) ou Modèle Word 97-2003 (fichier .dot).

  7. Fermez le modèle.

Source : https://support.office.microsoft.com/fr-fr/article/Cr%c3%a9er-un-nouveau-mod%c3%a8le-1a20aa19-5ca4-4b40-bdf2-57a2168c1e89?CorrelationId=123bdaa8-e363-4c2f-ac3b-5c8411786921&ui=fr-FR&rs=fr-001&ad=US#bm2

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Les soldes d'hiver 2025
SOLDES -1 -%
Carte TP-Link Archer AXE5400 PCIe WIFI 6E + Bluetooth 5.3 avec dissipateur à 32,99 €
32,99 € 75 € -56%
@Amazon
Mini PC NiPoGi AM21 (Ryzen 9 6900HX, 16 Go RAM, SSD 512 Go, Radeon RX 680M, Windows 11 Pro) à 359,99 €
359,99 € 499 € -28%
@Amazon
Multiprise Parafoudre Belkin 4 prises, cordon de 2 mètres à 15,99 €
15,99 € 19,99 € -20%
@Amazon
Batterie externe ultra mince INIU Power Bank (10 000 mAh, PD 22.5W, LED) à 10,92 €
10,92 € 22 € -50%
@Amazon
Ecran 27 pouces KTC H27T27 (QHD, IPS, 100 Hz, 1 ms, HDR10) à 90,61 €
90,61 € 120 € -24%
@AliExpress

Sujets relatifs
insérer un fichier dans un document word
Images plus visibles dans fichier Word 2013
Insérer un texte dans plusieurs champs avec Word
Je n'arrive plus à insérer une image dans Word 2007
insérer nombre de pages dans word 2010
insérer dans word des mots croisés hotpotatoes
Recuperation fichier Word dans son ancienne vers°
Insérer tableau Exel(paysage) dans Word(portrait)
Difficultés insertion Excel dans un fichier Word
Insérer un commentaire vocal dans WORD 2010/ 2007
Plus de sujets relatifs à Word insérer date du jour dans nom du fichier
 > Tous les forums > Forum Bureautique