Activer la protection Word en VB.net [Résolu]

Signaler
Messages postés
8
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
17 novembre 2009
-
Messages postés
8
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
17 novembre 2009
-
Bonjour, en fait je veux déverrouiller un document Word, écrire dedans et remettre la protection.

J'ai 2 problèmes :

_ je n'ai pas trouvé comment remettre la protection (je veux activer : "Autoriser ce type de modifications pour ce document : Aucune modifications"),

_ et le test qui vérifie la présence de protection ne fonctionne pas (
If ActiveDocument.ProtectionType <> wdNoProtection Then )
ca me met : "Le nom 'wdNoProtection' n'est pas déclaré. (BC30451)"

merci d'avance.

4 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

comment remettre la protection (je veux activer : "Autoriser ce type de modifications pour ce document : Aucune modifications"

Si tu utilises l'enregistreur de macro, tu obtiens de suite le code VBA ? :
ActiveDocument.Protect Password:="", NoReset:=False, Type:= _
        wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False


qui faudra adapter sous VB.NET pour le passage des paramètres (sans référence des paramètres, mais en tenant compte de leurs emplacements) peut-être ainsi :
ActiveDocument.Protect (3, "", False, False, False)


Amicalement,
Us.
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

C'est évident "wdNoProtection" est une constante interprétable que dans WORD. Utilise le debug pour en connaitre sa valeur et l'inclure ainsi dans VB.NET.

Ici : wdNoProtection = -1

Amicalement,
Us.
Messages postés
8
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
17 novembre 2009

merci ça fonctionne avec -1,

reste à trouver comment remettre la protection sur word.
Messages postés
8
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
17 novembre 2009

C'est bon :

ActiveDocument.Protect(Word.WdProtectionType.wdAllowOnlyReading, False, "mdp", False, False)

Merci