Déterminer quelle action de l'utilisateur a déclenché un événeme nt
5 réponses
arbiel
Bonjour à tous
Jai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document
pour mettre à jour automatiquement ses propriétés à partir de zones
prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai
besoin de savoir si l'action a été déclenché par
1) la commande "Enregistrer" du menu Fichier
2) la commande "Enregistrer sous"
3) l'enregistrement automatique
4) un bouton "Enregristrer" d'une barre d'outils
Quelqu'un peut-il me dire où se trouve ce type d'information ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Geo
Bonjour à tous
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document pour mettre à jour automatiquement ses propriétés à partir de zones prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai besoin de savoir si l'action a été déclenché par 1) la commande "Enregistrer" du menu Fichier 2) la commande "Enregistrer sous" 3) l'enregistrement automatique 4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop. On peut faire une macro de "surcharge" de la fonction enregistrement Sub FileSave() ' mise à jour des propriétés ActiveDocument.Save end sub mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la copie de secours.
-- A+
Bonjour à tous
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document
pour mettre à jour automatiquement ses propriétés à partir de zones
prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai
besoin de savoir si l'action a été déclenché par
1) la commande "Enregistrer" du menu Fichier
2) la commande "Enregistrer sous"
3) l'enregistrement automatique
4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop.
On peut faire une macro de "surcharge" de la fonction enregistrement
Sub FileSave()
' mise à jour des propriétés
ActiveDocument.Save
end sub
mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la
copie de secours.
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document pour mettre à jour automatiquement ses propriétés à partir de zones prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai besoin de savoir si l'action a été déclenché par 1) la commande "Enregistrer" du menu Fichier 2) la commande "Enregistrer sous" 3) l'enregistrement automatique 4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop. On peut faire une macro de "surcharge" de la fonction enregistrement Sub FileSave() ' mise à jour des propriétés ActiveDocument.Save end sub mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la copie de secours.
-- A+
arbiel
Bonjour à tous, et rebonjour à Géo et à qui vont de nouveau tous mes remerciements (je viens de commenter mon autre message)
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc.. Ceci ayant été fait, Word active la procédure ainsi désignée. On peut déduire ce que veut l'utilisateur soit par l'utilisation de procédures différentes, soit par le biais de la propriété "Parameter".
Je dis "semblent", car je ne comprends pas bien comment Word gère les barres de menus.
Une question subsiste : quel sera le comportement de Word à la fin de la procédure utilisateur : s'arrêtera-t-il ou poursuivra-t-il avec l'action "intégrée" ?
Mais encore faut-il repérer dans l'ensemble des barres de commandes, tous les objets (Controlx ?) qui déclenchent l'enregistrement d'un fichier. Mais ceci est un autre problème. On doit pouvoir utiliser la commande FindControls, mais permet-elle de rechercher par le paramètre "Caption" ? A voir
Bonjour à tous
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document pour mettre à jour automatiquement ses propriétés à partir de zones prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai besoin de savoir si l'action a été déclenché par 1) la commande "Enregistrer" du menu Fichier 2) la commande "Enregistrer sous" 3) l'enregistrement automatique 4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop. On peut faire une macro de "surcharge" de la fonction enregistrement Sub FileSave() ' mise à jour des propriétés ActiveDocument.Save end sub mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la copie de secours.
-- A+
Bonjour à tous, et rebonjour à Géo et à qui vont de nouveau tous mes
remerciements (je viens de commenter mon autre message)
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la
propriété "OnAction" des boutons, popUp, etc.. Ceci ayant été fait, Word
active la procédure ainsi désignée. On peut déduire ce que veut l'utilisateur
soit par l'utilisation de procédures différentes, soit par le biais de la
propriété "Parameter".
Je dis "semblent", car je ne comprends pas bien comment Word gère les barres
de menus.
Une question subsiste : quel sera le comportement de Word à la fin de la
procédure utilisateur : s'arrêtera-t-il ou poursuivra-t-il avec l'action
"intégrée" ?
Mais encore faut-il repérer dans l'ensemble des barres de commandes, tous
les objets (Controlx ?) qui déclenchent l'enregistrement d'un fichier. Mais
ceci est un autre problème. On doit pouvoir utiliser la commande
FindControls, mais permet-elle de rechercher par le paramètre "Caption" ? A
voir
Bonjour à tous
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document
pour mettre à jour automatiquement ses propriétés à partir de zones
prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai
besoin de savoir si l'action a été déclenché par
1) la commande "Enregistrer" du menu Fichier
2) la commande "Enregistrer sous"
3) l'enregistrement automatique
4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop.
On peut faire une macro de "surcharge" de la fonction enregistrement
Sub FileSave()
' mise à jour des propriétés
ActiveDocument.Save
end sub
mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la
copie de secours.
Bonjour à tous, et rebonjour à Géo et à qui vont de nouveau tous mes remerciements (je viens de commenter mon autre message)
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc.. Ceci ayant été fait, Word active la procédure ainsi désignée. On peut déduire ce que veut l'utilisateur soit par l'utilisation de procédures différentes, soit par le biais de la propriété "Parameter".
Je dis "semblent", car je ne comprends pas bien comment Word gère les barres de menus.
Une question subsiste : quel sera le comportement de Word à la fin de la procédure utilisateur : s'arrêtera-t-il ou poursuivra-t-il avec l'action "intégrée" ?
Mais encore faut-il repérer dans l'ensemble des barres de commandes, tous les objets (Controlx ?) qui déclenchent l'enregistrement d'un fichier. Mais ceci est un autre problème. On doit pouvoir utiliser la commande FindControls, mais permet-elle de rechercher par le paramètre "Caption" ? A voir
Bonjour à tous
J'ai écrit des procédures évenementielles (en VBA sous Word).
Je désire savoir quelle action de l'utilisateur a déclenché l'événement.
Plus précisément : je veux intercepter les enregistrements d'un document pour mettre à jour automatiquement ses propriétés à partir de zones prédéfinies du document (le nom de l'auteur, les mots clés, ....). J'ai besoin de savoir si l'action a été déclenché par 1) la commande "Enregistrer" du menu Fichier 2) la commande "Enregistrer sous" 3) l'enregistrement automatique 4) un bouton "Enregistrer" d'une barre d'outils
J'ai bien peur qu tu en demandes trop. On peut faire une macro de "surcharge" de la fonction enregistrement Sub FileSave() ' mise à jour des propriétés ActiveDocument.Save end sub mais elle ne distingue pas le 1 du 4.
idem pour FaileSaveAs pour le 2
Amha le 3 n'a aucun intérêt car normalement on n'a pas à utiliser la copie de secours.
-- A+
Geo
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus qu'on se fait. Je n'arrive plus à te suivre.
-- A+
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la
propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus
qu'on se fait. Je n'arrive plus à te suivre.
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus qu'on se fait. Je n'arrive plus à te suivre.
-- A+
arbiel
Bonjour Géo
Je comprends que mes messages puissent paraître confus. J'ai eu beaucoup du mal à comprendre l'organisation des menus et je suis venu chercher des éclaircissements dans ce forum.
Dans le même temps, je continue de chercher la solution à mes problèmes en m'appuyant sur l'aide en ligne et en faisant des tests pour vérifier ma compréhension des explications données dans cette aide.
J'en suis arrivé à ceci.
La propriété OnAction peut être appliquée à un "COntrolX" crée par l'utilisateur, mais aussi à une commande "BuilIn".
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons "Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre de ces deux boutons pour demander l'enregistrement d'un fichier.
Ceci résoudrait donc mon problème, mais je ne suis pas sûr d'avoir parfaitement compris, les explications de l'aide en ligne étant souvent, à mon sens, très insuffisantes (je suis un simple utilisateur essayant d'automatiser quelques tâches pour introduire des standards de travail dans une petite société).
Je trouve que la programmation en VBA, pour Word ou pour Excel, est extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que ce soit.
Merci encore de vous intéresser à mes difficultés.
Arbiel
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus qu'on se fait. Je n'arrive plus à te suivre.
-- A+
Bonjour Géo
Je comprends que mes messages puissent paraître confus. J'ai eu beaucoup du
mal à comprendre l'organisation des menus et je suis venu chercher des
éclaircissements dans ce forum.
Dans le même temps, je continue de chercher la solution à mes problèmes en
m'appuyant sur l'aide en ligne et en faisant des tests pour vérifier ma
compréhension des explications données dans cette aide.
J'en suis arrivé à ceci.
La propriété OnAction peut être appliquée à un "COntrolX" crée par
l'utilisateur, mais aussi à une commande "BuilIn".
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons
"Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de
définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre
de ces deux boutons pour demander l'enregistrement d'un fichier.
Ceci résoudrait donc mon problème, mais je ne suis pas sûr d'avoir
parfaitement compris, les explications de l'aide en ligne étant souvent, à
mon sens, très insuffisantes (je suis un simple utilisateur essayant
d'automatiser quelques tâches pour introduire des standards de travail dans
une petite société).
Je trouve que la programmation en VBA, pour Word ou pour Excel, est
extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que
ce soit.
Merci encore de vous intéresser à mes difficultés.
Arbiel
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la
propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus
qu'on se fait. Je n'arrive plus à te suivre.
Je comprends que mes messages puissent paraître confus. J'ai eu beaucoup du mal à comprendre l'organisation des menus et je suis venu chercher des éclaircissements dans ce forum.
Dans le même temps, je continue de chercher la solution à mes problèmes en m'appuyant sur l'aide en ligne et en faisant des tests pour vérifier ma compréhension des explications données dans cette aide.
J'en suis arrivé à ceci.
La propriété OnAction peut être appliquée à un "COntrolX" crée par l'utilisateur, mais aussi à une commande "BuilIn".
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons "Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre de ces deux boutons pour demander l'enregistrement d'un fichier.
Ceci résoudrait donc mon problème, mais je ne suis pas sûr d'avoir parfaitement compris, les explications de l'aide en ligne étant souvent, à mon sens, très insuffisantes (je suis un simple utilisateur essayant d'automatiser quelques tâches pour introduire des standards de travail dans une petite société).
Je trouve que la programmation en VBA, pour Word ou pour Excel, est extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que ce soit.
Merci encore de vous intéresser à mes difficultés.
Arbiel
J'ai fait quelques tests qui semblent indiquer que l'on peut renseigner la propriété "OnAction" des boutons, popUp, etc..
Le OnAction indique la macro lancée quand on clique dans les menus qu'on se fait. Je n'arrive plus à te suivre.
-- A+
Geo
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons "Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre de ces deux boutons pour demander l'enregistrement d'un fichier.
Je vais me répéter mais s'il s'agit simplement de savoir si on fait enregistrer ou enregistrer sous, sans s'occuper comme ça a été fait (il y a les raccourcis aussi) essaie : Sub FileSave() msgbox "Fonction Enregistrer" ActiveDocument.Save end sub Sub FileSaveAs() msgbox "Fonction Enregistrer Sous " ActiveDocument.Saveas end sub
Je trouve que la programmation en VBA, pour Word ou pour Excel, est extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que ce soit.
Ca doit être pour cela qu'on a inventé les forums.
Sur la question de la cohérence, on peut tout faire si on sait récupérer les données qui servent à cette vérification. Soit c'est à un emplacement précis, tableau par exemple, soit c'est repérable par le texte autour, soit on fait des zones de texte, soit on pose les questions aux utilisateurs. Mais j'ai un peu l'impression en vous lisant que vous voulez de la rigueur dans ce qui est récupéré mais que les utilisateurs mettent n'importe quoi. Si vous mettez des signets et que l'opérateur ne met rien dessus, vous avez bonne mine !
-- A+
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons
"Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de
définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre
de ces deux boutons pour demander l'enregistrement d'un fichier.
Je vais me répéter mais s'il s'agit simplement de savoir si on fait
enregistrer ou enregistrer sous, sans s'occuper comme ça a été fait (il
y a les raccourcis aussi) essaie :
Sub FileSave()
msgbox "Fonction Enregistrer"
ActiveDocument.Save
end sub
Sub FileSaveAs()
msgbox "Fonction Enregistrer Sous "
ActiveDocument.Saveas
end sub
Je trouve que la programmation en VBA, pour Word ou pour Excel, est
extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que
ce soit.
Ca doit être pour cela qu'on a inventé les forums.
Sur la question de la cohérence, on peut tout faire si on sait
récupérer les données qui servent à cette vérification.
Soit c'est à un emplacement précis, tableau par exemple, soit c'est
repérable par le texte autour, soit on fait des zones de texte, soit on
pose les questions aux utilisateurs.
Mais j'ai un peu l'impression en vous lisant que vous voulez de la
rigueur dans ce qui est récupéré mais que les utilisateurs mettent
n'importe quoi.
Si vous mettez des signets et que l'opérateur ne met rien dessus, vous
avez bonne mine !
D'après les tests que j'ai exécutés, l'application de OnAction aux boutons "Enregistrer" et "Enregistrer sous ..." du menu fichier de Word permet de définir la procédure à exécuter lorsque l'utilisateur utilise l'un ou l'autre de ces deux boutons pour demander l'enregistrement d'un fichier.
Je vais me répéter mais s'il s'agit simplement de savoir si on fait enregistrer ou enregistrer sous, sans s'occuper comme ça a été fait (il y a les raccourcis aussi) essaie : Sub FileSave() msgbox "Fonction Enregistrer" ActiveDocument.Save end sub Sub FileSaveAs() msgbox "Fonction Enregistrer Sous " ActiveDocument.Saveas end sub
Je trouve que la programmation en VBA, pour Word ou pour Excel, est extrêmement frustrante et qu'il faut énormément de temps pour faire quoi que ce soit.
Ca doit être pour cela qu'on a inventé les forums.
Sur la question de la cohérence, on peut tout faire si on sait récupérer les données qui servent à cette vérification. Soit c'est à un emplacement précis, tableau par exemple, soit c'est repérable par le texte autour, soit on fait des zones de texte, soit on pose les questions aux utilisateurs. Mais j'ai un peu l'impression en vous lisant que vous voulez de la rigueur dans ce qui est récupéré mais que les utilisateurs mettent n'importe quoi. Si vous mettez des signets et que l'opérateur ne met rien dessus, vous avez bonne mine !