|
Publicité ' | ||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
Bonjour à tous,
Nous avons des matrices permettant de consulter des documents word. Voici le code actuel : Code :
Je voudrais que quand l'utilisateur clique, monDoc s'ouvre, mette à jour les liens et quand l'utilisateur ferme le document il ne lui propose pas de l'enregistrer, comme c'est la cas maintenant. Cela est-il possible ? Merci d'avance |
||
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 321 ![]() |
Salut,
Il suffit de travailler sur l'évènement BeforeClose de l'application. Mais le document doit-il être sauvé ou pas ?
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#3 | |
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
Citation:
Mais cet évènement est sur l'application générale pas sur le document monDoc.doc que j'ouvre, non? En fait dans cette matrice, chaque document peut être consulté (code de mon premier message) ou sélectionné par une case à cocher. Si l'utilisateur valide à la fin, un nouveau document est créé et les fiches sélectionnées sont intégrées. Lors de la création du document final, j'ai désactivé les alertes pour que les messages de mises à jour des liaisons ne s'affichent pas mais que les mises à jour se fassent quand même. Une fois la création terminée (copie des fiches dans ce document) je rompt les liaisons qui se transforment en images. Mon problème se pose uniquement pour la consultation de monDoc.doc, j'ouvre mon document, il se met à jour. Quand je le ferme (croix rouge) je ne veux pas de message d'enregistrement et je ne veux pas l'enregistrer. Je ne sais pas si je suis très claire. |
|
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 321 ![]() |
Salut,
Pourquoi ne pas travailler avec un modèle ?
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonjour.
Tu peux faire après les mises à jours Si monDoc est une instance du document ouvert. Cordialement, PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#6 | |
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
C'est à dire transformer monDoc.doc en modèle sur lequel je définirai un beforeClose ?
J'ai 3 fois 56 documents qui sont concernés et un code qui n'est pas du tout optimisé (le code en exemple est répété 56 fois). J'hésite à me lancer dans cette grosse modif en plus de mes liaisons vers excel... Citation:
|
|
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 321 ![]() |
Salut,
Par défaut, lors de l'ouverture d'un modèle, on crée un nouveau document et aucune modification est apportée au modèle. Maintenant, l'évènement Document_close du document peut le faire, alors qu'avec un modèle, le problème ne se pose pas.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#8 | |||
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
Citation:
Je ne maitrise pas du tout vba, je bricole et ce que tu m'expliques n'est pas clair pour moi. J'ai essayé de rajouter sur monDoc.doc dans la feuille ThisDocument Code :
J'ai créé un modèle monDoc.dot, je l'appelle à la place de monDoc.doc : même résultat. J'ai essayé de lui coller DocumentClose, pas de changement... Reprenons, sans se soucier de l'existant et dans l'idéal : comment ouvrir à l'écran un document sur un clic bouton, mettre à jour les liaisons, les rompre (tant qu'à faire). Quand l'utilisateur a fini de lire, il ferme ce document (par la croix rouge) sans message de confirmation d'enregistrement et sans enregistrer les modif (puisqu'on a rompu les liens). Merci encore de ton aide |
|||
|
|
00
|
|
|
#9 | ||
![]() ![]() |
Bonjour, essaye de remplacer cela à la fin
parEt laisser le même code plus mettre à nothing les variables soit Code :
__________________
Cordialement, Christophe Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche |
||
|
|
00
|
|
|
#10 | ||||
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
Je viens de faire un test sur un document neuf et il manquait un "_" et avec Document_close cela fonctionne beaucoup mieux.
En mixant les propositions j'arrive à Code :
Donc question dérivée comment ne faire ce saved=true que dans ma macro sur mon bouton: Code :
Par contre, ActiveDocument.Saved = True à l'air de fonctionner, est ce que ça peut faire l'affaire? |
||||
|
|
00
|
|
|
#11 | |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonjour.
Citation:
PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
|
00
|
|
|
#12 |
|
Membre régulier
![]() Inscription : avril 2006 Messages : 118 ![]() |
Parfait ! Merci messieurs de votre aide précieuse ! Edit : En fait, c'est |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com