OVH Cloud OVH Cloud

Ignorer un boîte de dialogue microsoft office word

13 réponses
Avatar
JMM21
Bonjour,

J'ai créé un document word avec des marges volontairement à 0.
J'ai créé par ailleurs une macro affichant une boîte dialogue (msgform) pour
présenter le choix des pages à imprimer.
Un boîte de dialogue "microsfot office word" s'affiche avec le message
suivant : "les marges de la section 1 sont définies à l'extérieur de la zone
d'impression de la page. Poursuivre l'impression ? OUI -NON"

Comment puis-je, dans une macro vb word, forcer la réponse à "oui" ou bien
empêcher cette boîte de dialogue de s'afficher ???

Je ne suis pas arrivé à trouver dans l'aide VB le nom de cette boîte.

Merci pour votre coup de pouce.

Cordialement

3 réponses

1 2
Avatar
JMM21
Merci pour ces éléments riches en enseignements.
Je vais donc chercher dans cette voie.

Cordialement

JMM21

"Picalausa François" a écrit :

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

> C'est un numéro unique attribué par le système à chaque processus
> ouvert (<ctrl>+<alt>+<del>, sauf qu'on ne voit pas le handle mais le nom
> du processus)...
> Il permet en l'identifiant comme handle dans certaines opérations, de
> travailler sur le processus (ouverture, fermeture)...
> handle = commande... Voir ce mot dans les infos VB sur le Net...


Hello,

Un handle est une notion beaucoup plus générale qu'un PID.
Il s'agit d'un numéro unique attribué par un gestionnaire quelconque (GDI,
User, Kernel) à une entité quelconque pour laquelle le gestionnaire
considéré veut offrir une interaction abstraite. Ce numéro unique fait
généralement référence à une plage mémoire. Diverses API du gestionnaire
considéré permettent de réaliser l'abstraction voulue (accès à ce qui est
utile dans pour manipuler l'entité, sans apporter les modifications directes
dans la mémoire).
(il est à noter que handle n'est pas un terme d'origine informatique, qui a
le sens de poignée, levier, manche en tant que nom et to handle qui signifie
manier, manipuler... mais personellement, je préfère un HWND qu'une poignée
de fenêtre, un HACCEL plutôt qu'une pédale d'accélérateur, et un HBRUSH
qu'un manche de brosse - blague appart, handle est plus souvent traduit,
dans sa déclinaison informatique, par "manipulateur")
Cette définition n'est probablement pas complète, certainement pas exacte,
mais pour plus d'informations, voir:
http://en.wikipedia.org/wiki/Smart_pointer#Handles

Pour retrouver ces handles, il faut tout naturellement passer par les API du
gestionnaire considéré. Par exemple, pour un HWND, FindWindow de User32 peut
servir, tout comme EnumWindows et EnumChildWindows.
Ce code devrait pouvoir aider à retrouver la fenêtre en question:
http://vbnet.mvps.org/code/enums/enumwindowsdemo.htm

Pour répondre à la boite de dialogue, il faudra ensuite utiliser SendMessage
(soit avec un WM_CLOSE sur la fenêtre directement et beaucoup de chances,
soit en retrouvant le bouton OK et en lui envoyant un WM_CLICK).

L'utilitaire spy++ (spyxx.exe) permet aussi devoir plus clairement comment
s'organisent ces HWND...

--
Picalausa François





Avatar
JMM21
Hello,

Je galère...
Récent utilisateur et béotien de VB dans word, je découvre...que c'est hard
quand on a pas de formation.
Les règles de ce forum permettent elles de s'adresser par mail à un
"bienfaiteur" pour un coup de pouce plus "qu'appuyé" ???

C'est juste une question...

Bonne journée

Jean-Marie



"Picalausa François" a écrit :

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

> C'est un numéro unique attribué par le système à chaque processus
> ouvert (<ctrl>+<alt>+<del>, sauf qu'on ne voit pas le handle mais le nom
> du processus)...
> Il permet en l'identifiant comme handle dans certaines opérations, de
> travailler sur le processus (ouverture, fermeture)...
> handle = commande... Voir ce mot dans les infos VB sur le Net...


Hello,

Un handle est une notion beaucoup plus générale qu'un PID.
Il s'agit d'un numéro unique attribué par un gestionnaire quelconque (GDI,
User, Kernel) à une entité quelconque pour laquelle le gestionnaire
considéré veut offrir une interaction abstraite. Ce numéro unique fait
généralement référence à une plage mémoire. Diverses API du gestionnaire
considéré permettent de réaliser l'abstraction voulue (accès à ce qui est
utile dans pour manipuler l'entité, sans apporter les modifications directes
dans la mémoire).
(il est à noter que handle n'est pas un terme d'origine informatique, qui a
le sens de poignée, levier, manche en tant que nom et to handle qui signifie
manier, manipuler... mais personellement, je préfère un HWND qu'une poignée
de fenêtre, un HACCEL plutôt qu'une pédale d'accélérateur, et un HBRUSH
qu'un manche de brosse - blague appart, handle est plus souvent traduit,
dans sa déclinaison informatique, par "manipulateur")
Cette définition n'est probablement pas complète, certainement pas exacte,
mais pour plus d'informations, voir:
http://en.wikipedia.org/wiki/Smart_pointer#Handles

Pour retrouver ces handles, il faut tout naturellement passer par les API du
gestionnaire considéré. Par exemple, pour un HWND, FindWindow de User32 peut
servir, tout comme EnumWindows et EnumChildWindows.
Ce code devrait pouvoir aider à retrouver la fenêtre en question:
http://vbnet.mvps.org/code/enums/enumwindowsdemo.htm

Pour répondre à la boite de dialogue, il faudra ensuite utiliser SendMessage
(soit avec un WM_CLOSE sur la fenêtre directement et beaucoup de chances,
soit en retrouvant le bouton OK et en lui envoyant un WM_CLICK).

L'utilitaire spy++ (spyxx.exe) permet aussi devoir plus clairement comment
s'organisent ces HWND...

--
Picalausa François





Avatar
X
Bonjour,

Ben voui, il n'a jamais été interdit d'écrire à quelqu'un :o)

--
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"JMM21" a écrit dans le message de news:

Hello,

Je galère...
Récent utilisateur et béotien de VB dans word, je découvre...que c'est
hard
quand on a pas de formation.
Les règles de ce forum permettent elles de s'adresser par mail à un
"bienfaiteur" pour un coup de pouce plus "qu'appuyé" ???

C'est juste une question...

Bonne journée

Jean-Marie



"Picalausa François" a écrit :

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

> C'est un numéro unique attribué par le système à chaque processus
> ouvert (<ctrl>+<alt>+<del>, sauf qu'on ne voit pas le handle mais le
> nom
> du processus)...
> Il permet en l'identifiant comme handle dans certaines opérations, de
> travailler sur le processus (ouverture, fermeture)...
> handle = commande... Voir ce mot dans les infos VB sur le Net...


Hello,

Un handle est une notion beaucoup plus générale qu'un PID.
Il s'agit d'un numéro unique attribué par un gestionnaire quelconque
(GDI,
User, Kernel) à une entité quelconque pour laquelle le gestionnaire
considéré veut offrir une interaction abstraite. Ce numéro unique fait
généralement référence à une plage mémoire. Diverses API du gestionnaire
considéré permettent de réaliser l'abstraction voulue (accès à ce qui est
utile dans pour manipuler l'entité, sans apporter les modifications
directes
dans la mémoire).
(il est à noter que handle n'est pas un terme d'origine informatique, qui
a
le sens de poignée, levier, manche en tant que nom et to handle qui
signifie
manier, manipuler... mais personellement, je préfère un HWND qu'une
poignée
de fenêtre, un HACCEL plutôt qu'une pédale d'accélérateur, et un HBRUSH
qu'un manche de brosse - blague appart, handle est plus souvent traduit,
dans sa déclinaison informatique, par "manipulateur")
Cette définition n'est probablement pas complète, certainement pas
exacte,
mais pour plus d'informations, voir:
http://en.wikipedia.org/wiki/Smart_pointer#Handles

Pour retrouver ces handles, il faut tout naturellement passer par les API
du
gestionnaire considéré. Par exemple, pour un HWND, FindWindow de User32
peut
servir, tout comme EnumWindows et EnumChildWindows.
Ce code devrait pouvoir aider à retrouver la fenêtre en question:
http://vbnet.mvps.org/code/enums/enumwindowsdemo.htm

Pour répondre à la boite de dialogue, il faudra ensuite utiliser
SendMessage
(soit avec un WM_CLOSE sur la fenêtre directement et beaucoup de chances,
soit en retrouvant le bouton OK et en lui envoyant un WM_CLICK).

L'utilitaire spy++ (spyxx.exe) permet aussi devoir plus clairement
comment
s'organisent ces HWND...

--
Picalausa François







1 2