Nom du fichier automatique

Le
Alain.fr
Bonjour,

J'essaie de trouver un moyen lorsque je fais "Enregistrer sous", que le nom
de fichier se mette tout seul ds la petite case "Nom de fichier" (oui je
sait ça se fait déjà automatiquement).
Je voudrais que ça se fasse en respectant mes critères.
C'est là que ça se corse, je voudrais que le contenu de deux champ de texte
se mettent dans ce nom de fichier.

Voici mon format souhaité :

ATT Amiante [texte premier champ] [texte 2ème champ].doc
Ce qui devrait donner : ATT Amiante Hillary VARIEN 10 janv 2009.doc

Le texte premier champ est un nom le deuxième une date.

Je patine depuis un moment là dessus, dernièrement j'ai essayé avec une
macro mais "c'est une première" et le résultat pas très concluant.

De ce genre :
Sub TEST_Save()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante" & ".doc"

End Sub

Mais il manque le nom et la date.

Si vous avez une solution ?

Ce serra avec plaisir.

--

-- Alain
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Geo
Le #19055051
Bonjour

[Réponse faite sur le forum public Word :
news://msnews.microsoft.com/microsoft.public.fr.word ]
Bonjour,

J'essaie de trouver un moyen lorsque je fais "Enregistrer sous", que le nom de fichier
se mette tout seul ds la petite case "Nom de fichier" (oui je sait ça se fait déjà
automatiquement).
Je voudrais que ça se fasse en respectant mes critères.
C'est là que ça se corse, je voudrais que le contenu de deux champ de texte se mettent
dans ce nom de fichier.

Voici mon format souhaité :

ATT Amiante [texte premier champ] [texte 2ème champ].doc
Ce qui devrait donner : ATT Amiante Hillary VARIEN 10 janv 2009.doc

Le texte premier champ est un nom le deuxième une date.

Je patine depuis un moment là dessus, dernièrement j'ai essayé avec une macro mais
"c'est une première" et le résultat pas très concluant.

De ce genre :
Sub TEST_Save()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante" & ".doc"

End Sub

Mais il manque le nom et la date.

Si vous avez une solution ?



Des idées, au moins.
Vous pourriez mettre ces informations dans les propriétés du document
et les réutiliser.
Vous utilisez quelle version de Word ?

--
A+
Alain.fr
Le #19055481
Bonjour Geo,

Vous pourriez mettre ces informations dans les propriétés du document et
les réutiliser.



J'ai Word 2003.
J'ai essayé avec les propriétés mais ça va si le nom ne change pas, je
voudrais qu'il me prennent aussi mes deux champs spécifiques.

-- Alain


"Geo"
Bonjour

[Réponse faite sur le forum public Word :
news://msnews.microsoft.com/microsoft.public.fr.word ] Bonjour,

J'essaie de trouver un moyen lorsque je fais "Enregistrer sous", que le
nom de fichier se mette tout seul ds la petite case "Nom de fichier" (oui
je sait ça se fait déjà automatiquement).
Je voudrais que ça se fasse en respectant mes critères.
C'est là que ça se corse, je voudrais que le contenu de deux champ de
texte se mettent dans ce nom de fichier.

Voici mon format souhaité :

ATT Amiante [texte premier champ] [texte 2ème champ].doc
Ce qui devrait donner : ATT Amiante Hillary VARIEN 10 janv 2009.doc

Le texte premier champ est un nom le deuxième une date.

Je patine depuis un moment là dessus, dernièrement j'ai essayé avec une
macro mais "c'est une première" et le résultat pas très concluant.

De ce genre :
Sub TEST_Save()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante" &
".doc"

End Sub

Mais il manque le nom et la date.

Si vous avez une solution ?



Des idées, au moins.



Vous utilisez quelle version de Word ?

--
A+




Geo
Le #19055471
Bonjour Alain
[Réponse faite sur le forum public Word :
news://msnews.microsoft.com/microsoft.public.fr.word ]



J'ai Word 2003.
J'ai essayé avec les propriétés mais ça va si le nom ne change pas, je voudrais qu'il
me prennent aussi mes deux champs spécifiques.



Si c'est un nouveau document, Word propose comme nom le contenu de la
première ligne, donc vous pourriez y mettre le futur nom du document,
quitte à le mettre en caractères "blancs" pour qu'on ne les voie pas.
Si je ne me trompe pas, le répertoire par défaut est défini dans les
options.

Word 2003 prend le champ Titre comme nom par défaut s'il est rempli,
donc c'est une deuxième piste.

Le contenu des propriétés est utilisable dans les macros, c'était pour
cela que j'en parlais, vous pouvez même en ajouter de nouvelles.

En fait il y a plusieurs solutions, le tout est de savoir comment
"vivent" vos documents et leurs noms. Si vous modifiez le document,
est-ce qu'il change de nom ? La date c'est la date du jour ? d'un
événement ? de la création du document ? etc.

--
A+
Circé
Le #19055461
Bonjour,

De quel type champ s'agit-il ?
Je ne comprends pas pourquoi ne pas utiliser les champs propriétés,
quitte à en créer de nouveaux.

Circé
http://faqword.fr

Alain.fr a exposé le 05/04/2009 :
Bonjour Geo,

Vous pourriez mettre ces informations dans les propriétés du document et
les réutiliser.



J'ai Word 2003.
J'ai essayé avec les propriétés mais ça va si le nom ne change pas, je
voudrais qu'il me prennent aussi mes deux champs spécifiques.

-- Alain


"Geo"
Bonjour

[Réponse faite sur le forum public Word :
news://msnews.microsoft.com/microsoft.public.fr.word ] Bonjour,

J'essaie de trouver un moyen lorsque je fais "Enregistrer sous", que le
nom de fichier se mette tout seul ds la petite case "Nom de fichier" (oui
je sait ça se fait déjà automatiquement).
Je voudrais que ça se fasse en respectant mes critères.
C'est là que ça se corse, je voudrais que le contenu de deux champ de
texte se mettent dans ce nom de fichier.

Voici mon format souhaité :

ATT Amiante [texte premier champ] [texte 2ème champ].doc
Ce qui devrait donner : ATT Amiante Hillary VARIEN 10 janv 2009.doc

Le texte premier champ est un nom le deuxième une date.

Je patine depuis un moment là dessus, dernièrement j'ai essayé avec une
macro mais "c'est une première" et le résultat pas très concluant.

De ce genre :
Sub TEST_Save()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante" &
".doc"

End Sub

Mais il manque le nom et la date.

Si vous avez une solution ?



Des idées, au moins.



Vous utilisez quelle version de Word ?

-- A+






Alain.fr
Le #19055451
Merci Geo de s'interresser à mon problème,

En fait ce sont des attestations de formation que je dois stoker.
Ce document est issue d'un modèle, je ne remplie que le nom et la date de la
formation et je classe dans un répertoire Formation avec des sous-dossiers
Dates.

Je n'ai que deux éléments à remplir et ensuite le nom du document à changer.
J'aimerais m'éviter de recopier dans le nom du fichier le nom et la date.

-- Alain
Circé
Le #19055831
Alain.fr avait soumis l'idée :
Merci Geo de s'interresser à mon problème,

En fait ce sont des attestations de formation que je dois stoker.
Ce document est issue d'un modèle, je ne remplie que le nom et la date de la
formation et je classe dans un répertoire Formation avec des sous-dossiers
Dates.



Ça ne dit pas de quels types de champ il s'agit... S'il s'agit d'un
formulaire, avec des champs de formulaire, il suffit de récupérer les
signets affectés aux champs et de les utiliser dans une macro, comme
dans cet exemple :
http://faqword.fr/index.php/faq/vba-solutions/630-cnomfichier.html

Circé
http://faqword.fr


Je n'ai que deux éléments à remplir et ensuite le nom du document à changer.
J'aimerais m'éviter de recopier dans le nom du fichier le nom et la date.

-- Alain


Geo
Le #19055821
Re
[Réponse faite sur le forum public Word :
news://msnews.microsoft.com/microsoft.public.fr.word ]




En fait ce sont des attestations de formation que je dois stoker.
Ce document est issue d'un modèle, je ne remplie que le nom et la date de la formation
et je classe dans un répertoire Formation avec des sous-dossiers Dates.

Je n'ai que deux éléments à remplir et ensuite le nom du document à changer.
J'aimerais m'éviter de recopier dans le nom du fichier le nom et la date.



D'accord, décris comme ça, on voit où aller.
Le nom, c'est le nom de l'élève ?
Supposons qu'il y ait trois éléments à remplir, soit on peut mettre
dans le modèle trois champs Ask pour demander le contenu des champs,
voir
http://www.faqword.fr/index.php/wfaq/champs/622-comment-utiliser-les-champs-ask-.html
et le réutiliser pour mettre le nom du document.

Exemple :
{ASK TitreFormation "Quelle est la formation ?" }
{ASK DateFormation "Quelle est la date ?" }

Ceci peut donc figurer dans le texte de l'attestation et réutilisé dans
le nom du fichier

Saveas "Mon Dossier " & Bookmarks("TitreFormation")
Bookmarks("DateFormation")

Si on veut s'éviter une liste de questions trop longue, autant utiliser
les propriétés qui permettent de saisir plusieurs données directement
dans la fenêtre des propriétés et les réutiliser dans le texte et dans
le nom de fichier.

--
A+
Alain.fr
Le #19055811
> De quel type champ s'agit-il ?



J'appelle champ des TextBox en fait, pardon pour le terme impropre.
C'est pour pouvoir les utiliser dans la macro.

Je pense que je suis sur une bonne piste.

J'ai créé un Bouton et affecté la macro suivante :

Private Sub CommandButton1_Click()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante " &
TextBox1 & " " & TextBox2 & ".doc"

End Sub

J'ai bien mon nom sous cette forme :

ATT Amiante Marcel DECHEVAL 10 janv 2009.doc

Ce qui me gène encore c'est que j'ai fixé le chemin en dur dans la macro
j'aurais préféré que la boite de dialogue Enregistrer-sous s'ouvre pour que
je puisse vérifier le répertoire de destination.

Mais bon c'est déjà pas si mal.

-- Alain
Alain.fr
Le #19056281
Si je pouvais avoir l'ouverture de la boite de dialogue effectivement ça
serrait Top.
Et aussi un détail comment faire pour que le CommandButton1 qui me sert à
lancer la macro d'enregistrement n'apparaisse pas à l'impression ?
Je préfère mettre un bouton dans le document plutôt que sur ma barre
d'Outils car la saisie peux être faite par différentes personnes.



"Alain.fr" O%
De quel type champ s'agit-il ?



J'appelle champ des TextBox en fait, pardon pour le terme impropre.
C'est pour pouvoir les utiliser dans la macro.

Je pense que je suis sur une bonne piste.

J'ai créé un Bouton et affecté la macro suivante :

Private Sub CommandButton1_Click()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante " &
TextBox1 & " " & TextBox2 & ".doc"

End Sub

J'ai bien mon nom sous cette forme :

ATT Amiante Marcel DECHEVAL 10 janv 2009.doc

Ce qui me gène encore c'est que j'ai fixé le chemin en dur dans la macro
j'aurais préféré que la boite de dialogue Enregistrer-sous s'ouvre pour
que je puisse vérifier le répertoire de destination.

Mais bon c'est déjà pas si mal.

-- Alain



Gloops
Le #19056511
[Initialiser le nom par défaut du fichier dans la boîte EnregistrerSo us]
(J'ai supposé avoir affaire à Windows)

Bonjour,

La réponse se trouve dans la rubrique d'aide FileDialog.

Donc, accéder à l'environnement de développement avec les touches
Alt F11 (depuis Word), et là trouver la liste déroulante en haut à
droite de la fenêtre (en fait, à droite de la barre de menus).

Y taper "FileDialog", lorsqu'on presse Entrée apparaît une liste, y
cliquer sur l'objet FileDialog (en tout cas, c'est comme ça que ça se
présente sous Word 2002 SP3).

On verra qu'avant d'afficher la boîte par la méthode Show, on peut
initialiser sa propriété InitialFileName, en y mettant de préfére nce un
chemin d'accès dans un répertoire existant.

ça va nous donner quelque chose comme ceci :

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogSaveAs)
fd.InitialFileName = _
"C:Documents and SettingsTartampionMes documentsTest01.doc"
fd.Show
MsgBox fd.SelectedItems(1)


Bien entendu je laisse le soin de remplacer "Test01" par le contenu des
deux champs adéquats (et préciser où il faut comment s'appelle
Tartampion). Au besoin, ouvrir un autre fil ici pour savoir comment
connaître les chemins vers les répertoires spéciaux de Windows.

Quelqu'un maîtrisant mieux le développement sous Word pourra précis er si
il convient d'ajouter une référence au projet pour que le type
FileDialog soit proposé par IntelliSense parmi les types possibles.

Je précise que cette man½uvre fait l'objet d'une particularité sous Word
du fait de l'existence de l'objet FileDialog, dans beaucoup d'autres
applications on appelle directement l'API GetSaveFileName
_______________________________________
Alain.fr a écrit, le 05/04/2009 01:09 :
Bonjour,

J'essaie de trouver un moyen lorsque je fais "Enregistrer sous", que le
nom de fichier se mette tout seul ds la petite case "Nom de fichier"
(oui je sait ça se fait déjà automatiquement).
Je voudrais que ça se fasse en respectant mes critères.
C'est là que ça se corse, je voudrais que le contenu de deux champ de
texte se mettent dans ce nom de fichier.

Voici mon format souhaité :

ATT Amiante [texte premier champ] [texte 2ème champ].doc
Ce qui devrait donner : ATT Amiante Hillary VARIEN 10 janv 2009.doc

Le texte premier champ est un nom le deuxième une date.

Je patine depuis un moment là dessus, dernièrement j'ai essayé av ec une
macro mais "c'est une première" et le résultat pas très concluant .

De ce genre :
Sub TEST_Save()

ActiveDocument.SaveAs FileName:="E:Mes documents" & "ATT Amiante" &
".doc"

End Sub

Mais il manque le nom et la date.

Si vous avez une solution ?

Ce serra avec plaisir.



Publicité
Poster une réponse
Anonyme