Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/03/2011, 16h22   #1
Invité régulier
 
Inscription : février 2011
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 13
Points : 5
Points : 5
Par défaut Protéger un document WORD à partir d'un code VBA

Bonjour,

Je dois modifier un programme qui a été créé par une autre personne qui n'est plus dans mon entreprise.

Ce programme, à partir de données exportées du SI (Excel), génère des contrats. Le lien entre les exports et les trames vierges de contrat est effectué par des champs de fusion, et le tout automatisé sous VBA.

Je souhaiterai faire en sorte que les documents WORD finaux (cad les contrats), soient protégés de toutes modifications à la suite de leur génération.

N'étant pas un expert en VBA, pouvez-vous m'indiquez quel code utiliser pour protéger un document WORD ?

Merci d'avance
Joévin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 17h13   #2
pgz
Expert Confirmé Sénior
 
Avatar de pgz
 
Homme Pierre GONZALEZ
Développeur Office VBA
Inscription : août 2005
Messages : 3 412
Détails du profil
Informations personnelles :
Nom : Homme Pierre GONZALEZ
Âge : 58
Localisation : France

Informations professionnelles :
Activité : Développeur Office VBA
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 412
Points : 5 934
Points : 5 934
Bonjour.

As-tu songé à faire une édition au format .pdf?

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
pgz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 18h48   #3
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

Parfois l'enregistreur de macro donne de bons résultats.

Il donne ceci :

Code :
1
2
3
 
ActiveDocument.Protect Password:="oli", NoReset:=False, Type:= _
        wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False
__________________
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 !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 16/03/2011, 02h09   #4
Rédacteur/Modérateur
 
Avatar de Sepia
 
Homme JF Jousseaume
Inscription : octobre 2007
Messages : 2 390
Détails du profil
Informations personnelles :
Nom : Homme JF Jousseaume
Âge : 48
Localisation : France

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 2 390
Points : 3 377
Points : 3 377
Salut Joévin,

Les 2 solutions sont bonnes mais celle de PGZ est plus définitive puisque les modifications d'un PDF sont quasi impossibles mais elle te permet de directement envoyer tes contrats à tes clients (PDF reste le format de diffusion le plus commun) mais celle de Heureux-Oli te permet de garder la possibilité de modifier et de récupérer le document (au format Word) à condition d'avoir le mot de passe.

@+
Sepia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 09h24   #5
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

De toute façon, le read-only n'est qu'une illusion en Word.
Si tu fais Ctrl + A pour sélectionner le document, Ctrl + C pour copier.
Il suffit de coller dans un nouveau document et le tour est joué.
__________________
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 !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 14h12   #6
Invité régulier
 
Inscription : février 2011
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 13
Points : 5
Points : 5
Je préfère conserver le format WORD car le contrat est ensuite validé par la direction d'où la necessité de pouvoir le modifier. Mais c'est vrai que le Pdf serait mieux.

Merci Heureux-Oli pour ce code. Ca fonctionne avec le code suivant:
wordDocs(j).Protect Password:="......", Type:=wdAllowOnlyComments

J'ai remplacéType:=wdAllowOnlyReading par Type:=wdAllowOnlyComments car sinon ca marchait pas. Je ne sais pas pourquoi mais le principal c'est que le doc soit protégé....

Encore merci pour votre aide.
Joévin est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h48.


 
 
 
 
Partenaires

Hébergement Web