Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment numéroter automatiquement un document ?

6 réponses
Avatar
David Lemaitre
Bonjour à tous, et excusez-moi par avance - je débute sur les News...

Nous utilisons un système de numérotation des courriers papier envoyés sous
la forme AAAA.ddd, où ddd est le numéro d'ordre du jour dans l'année (p. ex
le 1er janvier : 001, le 31 décembre 365 ou 366.)Ce numéro de série doit
figurer sur l'entête du document.

J'ai déjà paramétré un champ CreateDate pour l'année, mais comment
paramétrer un champ supplémentaire pour le numéro du jour ?

Question subsidiaire, mais qui m'intéresse aussi : peut on paramétrer la
sauvegarde du fichier
sous la forme AAAAdddnomdufichierà ajouter.doc ?

Nous utilisons une gamme de logiciels Word allant de 97 à 2003 (je suis sous
2003), donc une solution globale serait la bienvenue...

Merci par avance

David

6 réponses

Avatar
Anacoluthe
Bonjour !

'David Lemaitre' nous a écrit ...
Nous utilisons un système de numérotation des courriers papier envoyés sous
la forme AAAA.ddd, où ddd est le numéro d'ordre du jour dans l'année (p. ex
le 1er janvier : 001, le 31 décembre 365 ou 366.)Ce numéro de série doit
figurer sur l'entête du document.

J'ai déjà paramétré un champ CreateDate pour l'année, mais comment
paramétrer un champ supplémentaire pour le numéro du jour ?


Trop compliqué avec les champs : Word est nul en calcul de dates.
Il faudra calculer ce nombre avec une macro.

Question subsidiaire, mais qui m'intéresse aussi : peut on paramétrer la
sauvegarde du fichier
sous la forme AAAAdddnomdufichierà ajouter.doc ?


Si le document est n'a pas encore de nom, Word propose le champ Titre
du document ou du modèle, puis à défaut le début du premier paragraphe.
Là encore on peut utiliser aussi une macro.

Anacoluthe
« Il faut bien donner un nom à ce qui n'a pas de nom »
- Vladimir JANKÉLÉVITCH

Avatar
David Lemaitre
Bonjour et merci !

Cependant, vu que je suis relativement nul en macros
(relativement parce que je sais au moins que ça existe),
Quelle macros seraient utilisables pour faire tout ça ?

Merci par avance,

David

"Anacoluthe" a écrit dans le message de news:

Bonjour !

'David Lemaitre' nous a écrit ...
Nous utilisons un système de numérotation des courriers papier envoyés
sous la forme AAAA.ddd, où ddd est le numéro d'ordre du jour dans l'année
(p. ex le 1er janvier : 001, le 31 décembre 365 ou 366.)Ce numéro de
série doit figurer sur l'entête du document.

J'ai déjà paramétré un champ CreateDate pour l'année, mais comment
paramétrer un champ supplémentaire pour le numéro du jour ?


Trop compliqué avec les champs : Word est nul en calcul de dates.
Il faudra calculer ce nombre avec une macro.

Question subsidiaire, mais qui m'intéresse aussi : peut on paramétrer la
sauvegarde du fichier
sous la forme AAAAdddnomdufichierà ajouter.doc ?


Si le document est n'a pas encore de nom, Word propose le champ Titre
du document ou du modèle, puis à défaut le début du premier paragraphe.
Là encore on peut utiliser aussi une macro.

Anacoluthe
« Il faut bien donner un nom à ce qui n'a pas de nom »
- Vladimir JANKÉLÉVITCH



Avatar
Anacoluthe
Bonjour !

'David Lemaitre' nous a écrit ...
Cependant, vu que je suis relativement nul en macros
(relativement parce que je sais au moins que ça existe),
Quelle macros seraient utilisables pour faire tout ça ?


Vous souhaitez disposer d'une chaîne AAAAddd pour une date
sachant que AAAA est l'année et ddd le n° du jour dans l'année.

Voici la fonction à titre de jeu en une seule instruction vba :

Public Function ChaineDate(D As Date) As String
ChaineDate = CStr(Year(D)) & _
Format(DateDiff("d", CDate("01/01/" & CStr(Year(D))), D) + 1, "000")
End Function

ChaineDate(Date) donne aujourd'hui 2006013
ChaineDate("25/12/05") donne 2005359
C'est bien ça ?

Utilisez cette fonction dans une macro automatique pour
nommer chaque document créé selon votre schéma.

Anacoluthe
« J'aime les calculs faux, car ils donnent des résultats
plus justes. »
- Jean ARP

Avatar
David Lemaitre
Je ne dira qu'une seule chose :

Cestabsbolumentformidablemercimecrimerci !

Merci encore,

David.


"Anacoluthe" a écrit dans le message de news:
uIzs9$
Bonjour !

'David Lemaitre' nous a écrit ...
Cependant, vu que je suis relativement nul en macros
(relativement parce que je sais au moins que ça existe),
Quelle macros seraient utilisables pour faire tout ça ?


Vous souhaitez disposer d'une chaîne AAAAddd pour une date
sachant que AAAA est l'année et ddd le n° du jour dans l'année.

Voici la fonction à titre de jeu en une seule instruction vba :

Public Function ChaineDate(D As Date) As String
ChaineDate = CStr(Year(D)) & _
Format(DateDiff("d", CDate("01/01/" & CStr(Year(D))), D) + 1, "000")
End Function

ChaineDate(Date) donne aujourd'hui 2006013
ChaineDate("25/12/05") donne 2005359
C'est bien ça ?

Utilisez cette fonction dans une macro automatique pour
nommer chaque document créé selon votre schéma.

Anacoluthe
« J'aime les calculs faux, car ils donnent des résultats
plus justes. »
- Jean ARP



Avatar
David Lemaitre
Ch'crois qu'j'ai encore un piti problème msieur...

Euh quand sous VBA je clique sur le bouton exécuter, VBA me renvoie :
"Erreur de compilation Nom ambigu détecté : Chainedate"
C'est normal docteur ?

Et pis tant qu'à faire...
Comment insérer cette (censuré d'censurée) de macro dans mon modèle de
document ?
une guide pas à pas pour béotien avec deux mains gauches serait extrèmeùent
bienvenu

Merci par avance

David,
Désespéré.
Avatar
Anacoluthe
Bonjour !

'David Lemaitre' nous a écrit ...
Euh quand sous VBA je clique sur le bouton exécuter, VBA me renvoie :
"Erreur de compilation Nom ambigu détecté : Chainedate"
Et pis tant qu'à faire...
Comment insérer cette (censuré d'censurée) de macro dans mon modèle de
document ?
une guide pas à pas pour béotien avec deux mains gauches serait extrèmeùent
bienvenu


Voyez dans la faq : http://faqword.free.fr
ChaineDate est une fonction, pas une macro. Vous devez copier son
code dans le module et l'utiliser dans une macro de ce module.

Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS