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

Parametre de la boite de dialogue "Enregistre sous"

8 réponses
Avatar
cemima
Bonjour
Je cherche a passer les parametres suivant à la boite de dialogue
"Enregistrer sous"
- chemin du repertoire où le fichier doit être enregistré
- nom par défaut proposé en fonction des circonstance par l'application.
Il existe dans Excel une speudo boite de dialogue " GetSaveAsFilename " qui
permet de poser des controls sur les parametre. Je cherche l'équivalent de
cette fonction dans word mais je ne trouve rien dans l'aide.
Si vous avez des idées...
Merci à tous

8 réponses

Avatar
Anacoluthe
Bonjour !

'cemima' nous a écrit ...
Je cherche a passer les parametres suivant à la boite de dialogue
"Enregistrer sous"
- chemin du repertoire où le fichier doit être enregistré
- nom par défaut proposé en fonction des circonstance par l'application.


Les deux sont définis dans la propriété .Name de Dialogs(wdDialogFileSaveAs)

Pas compris pourquoi une pseudo-dialogue. Soit vous enregistrez
dans un dossier donné sous un nom donné et alors pas besoin d'utiliser
la boîte de dialogue. Soit vous voulez pré-remplir la boîte de dialogue
avec un dossier et un nom de fichier tout en laissant l'utilisateur
enregistrer ailleurs et sous un autre nom. Si c'est bien ça que vous
cherchez, surchargez la commande 'Enregistrer sous' :

Public Sub FichierEnregistrerSous()
With Dialogs(wdDialogFileSaveAs)
.Name = "c:monRepertoirepatatipatataMonFichier.doc"
.Show
End With
End Sub

C'est bon ?

Anacoluthe
« Nommer, c'est aussi sauver. »
- Claudio MAGRIS

Avatar
cemima
Merci de votre réponse, mais elle ne correspond pas tout à fait à ce que je
souhaite réaliser.
Dans un premier temps, je souhaite ouvrir la boite de dialogue "enregistrer
sous" en indiquant le chemin du répertoire et le nom sous lequel je suggère
que le fichier soit enregistrer. Pour cela, votre réponse m'apporte une
piste. Mais avant de réellement enregistrer, il faut que je puisse controler
ce que l'utilisateur final aura choisi. Mais là, je n'arrive pas à récupérer
ces renseignements...

Merci


Bonjour !

'cemima' nous a écrit ...
Je cherche a passer les parametres suivant à la boite de dialogue
"Enregistrer sous"
- chemin du repertoire où le fichier doit être enregistré
- nom par défaut proposé en fonction des circonstance par l'application.


Les deux sont définis dans la propriété .Name de Dialogs(wdDialogFileSaveAs)

Pas compris pourquoi une pseudo-dialogue. Soit vous enregistrez
dans un dossier donné sous un nom donné et alors pas besoin d'utiliser
la boîte de dialogue. Soit vous voulez pré-remplir la boîte de dialogue
avec un dossier et un nom de fichier tout en laissant l'utilisateur
enregistrer ailleurs et sous un autre nom. Si c'est bien ça que vous
cherchez, surchargez la commande 'Enregistrer sous' :

Public Sub FichierEnregistrerSous()
With Dialogs(wdDialogFileSaveAs)
.Name = "c:monRepertoirepatatipatataMonFichier.doc"
.Show
End With
End Sub

C'est bon ?

Anacoluthe
« Nommer, c'est aussi sauver. »
- Claudio MAGRIS




Avatar
Anacoluthe
Bonjour !

'cemima' nous a écrit ...
Mais avant de réellement enregistrer, il faut que je puisse controler
ce que l'utilisateur final aura choisi. Mais là, je n'arrive pas à récupérer
ces renseignements...


Si vous savez *où* ils sont dans le document (un champ, un signet, un
paragraphe, une cellule de tableau, une propriété de document,
que sais-je encore ?) il est très facile de les récupérer dans
une variable chaîne que vous affecterez ensuite à .Name dans
le code que je vous ai donné en exemple ! Où est la difficulté ?

Anacoluthe
« Nommer, c'est aussi sauver. »
- Claudio MAGRIS

Avatar
Geo

Bonjour !

'cemima' nous a écrit ...
Mais avant de réellement enregistrer, il faut que je puisse controler ce que
l'utilisateur final aura choisi. Mais là, je n'arrive pas à récupérer ces
renseignements...


Si vous savez *où* ils sont dans le document (un champ, un signet, un
paragraphe, une cellule de tableau, une propriété de document,
que sais-je encore ?) il est très facile de les récupérer dans
une variable chaîne que vous affecterez ensuite à .Name dans
le code que je vous ai donné en exemple ! Où est la difficulté ?


Je me demande si le souhait n'est pas d'interdire certains
emplacements, il vaudrait mieux utiliser display, puis execute après
contrôle, et non show dans ce cas. (pas testé)

--
A+


Avatar
Mima
Bonjour
Effectivement, je souhaite réaliser les controles avant d'enregistrer et
avoir la possibilité d'annuler la commande. Comment utilisez vous les
commandes "display puis execute".
Je ne suis pas très à lèse dans word.
Merci


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


Bonjour !

'cemima' nous a écrit ...
Mais avant de réellement enregistrer, il faut que je puisse controler ce
que l'utilisateur final aura choisi. Mais là, je n'arrive pas à
récupérer ces renseignements...


Si vous savez *où* ils sont dans le document (un champ, un signet, un
paragraphe, une cellule de tableau, une propriété de document,
que sais-je encore ?) il est très facile de les récupérer dans
une variable chaîne que vous affecterez ensuite à .Name dans
le code que je vous ai donné en exemple ! Où est la difficulté ?


Je me demande si le souhait n'est pas d'interdire certains emplacements,
il vaudrait mieux utiliser display, puis execute après contrôle, et non
show dans ce cas. (pas testé)

--
A+






Avatar
Anacoluthe
Bonjour !

'Mima' nous a écrit ...
Effectivement, je souhaite réaliser les controles avant d'enregistrer et
avoir la possibilité d'annuler la commande. Comment utilisez vous les
commandes "display puis execute".


Une boîte de dialogue a 3 méthodes :

.Show : montre la boîte puis exécute le choix de l'utilisateur
.Display : montre la boîte mais retourne un code de l'action finale de
l'utilisateur (OK, annuler, fermer) sans rien exécuter
.Execute : exécute la boîte avec ses paramètres en cours (sans la montrer)

On peut donc afficher une Dialog avec Display, laisser l'utilisateur
la remplir, contrôler ou modifier ses entrées puis seulement l'exécuter.

Anacoluthe
« Le bon dialogue ne se paie pas de mots. »
- Carlo RIM

Avatar
Geo

Bonjour
Effectivement, je souhaite réaliser les controles avant d'enregistrer et avoir la
possibilité d'annuler la commande. Comment utilisez vous les commandes "display puis
execute".


Un extrait de l'aide pour illustrer le cours magistral d'Anacoluthe :

Sub ShowAndSetUserInfoDialogBox()
With Dialogs(wdDialogToolsOptionsUserInfo)
.Display
If .Name <> "" Then .Execute
End With
End Sub

--
A+

Avatar
Mima
Merci à Anacoluthe et à Géo.
Ces conseils me sont précieux et je vais essayer de les mettre en oeuvres

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


Bonjour
Effectivement, je souhaite réaliser les controles avant d'enregistrer et
avoir la possibilité d'annuler la commande. Comment utilisez vous les
commandes "display puis execute".


Un extrait de l'aide pour illustrer le cours magistral d'Anacoluthe :

Sub ShowAndSetUserInfoDialogBox()
With Dialogs(wdDialogToolsOptionsUserInfo)
.Display
If .Name <> "" Then .Execute
End With
End Sub

--
A+