Aller au contenu
Zebulon
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

inserer du code VBA sous VBA


matrix06

Messages recommandés

Bonjour,

je cherche à partir d'un document Word vierge de tout code VBA (je recois des fichiers que je ne traite pas, sauf que je dois les rendrent 'non copiables' et non 'modifiables' une fois sauvés sous un autre nom)

(je ne peux faire du pdf, car sinon le pb est résolu, le fichier doit être du Word...it's like that...

 

donc, mon idée est de 'mettre du code' dans l'open, qui va rendre inactive la barre de menu...

 

avec du code comme cet exemple:

Application.CommandBars("Menu bar").Control(6).Enabled = False

 

une fois innaccessible, le menu ne peut apparaitre et le document est 'protégé'...copier/coller, affichage barre d'outils, protect, etc rien d'accessible)

 

par contre comment faire l'ajout de code ?

 

ou avez vous une autre solution (il faut que ce soit possible, rien qu'en ouvrant le dossier, ou par un bouton personnalisé qui peut acceder à du code, de Normal.dot)

 

c'est ce que je fais pour renommer ce document avant de le sauvegarder, mais de là, je ne sais pas si on peux 'coller' du code dans un evenement ? (sans le faire à la main !?, ce qui n'est pas l'objectif!!)

 

merci à vous si vous avez une soluce...

 

gérer une fusion? un module ? mais cela doit etre automatique...

Lien vers le commentaire
Partager sur d’autres sites

  • Modérateurs

Je suis peut-être à côté de la plaque, mais pourquoi ne pas tout simplement utiliser les options standard de WORD, Outils / Options / Sécurité, permettant de protéger le fichier par un mot de passe contre la modification (voire même contre la lecture) ?

 

img-00204849o3n.jpg

Je suis effectivement à côté de la plaque. Ta question est un pur exercice de style...

Lien vers le commentaire
Partager sur d’autres sites

il y'a bien une soluce.

 

mais bon, cela ne protégera rien du tout.

car pour déprotéger le gars ouvre un autre word lance l'explorateur vba puis ouvre ton fichier "protégé" et fait ce qu'il veut avec ta pseudo protection.

 

la seule soluce est celle de dylav car alors la protection est intégré dans le code vbe de la feuille.

 

note que tu peux le faire via vba

je ne connais pas la commande pour word, mais sous excel il s'agit de activeworkbook.protect (suivent les options)

 

regarde dans l'aide de word.

 

regarde aussi un truc qui s'apelle protect.userinterfaceonly

 

 

A+

Modifié par scuny
Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Je vais peut-être me planter, mais je me disais un truc. Tu ne pourrais pas créer un modèle fixe, vierge et qui contient le code qui protège.

Et dans ce code en plus, tu paramètres l'ouverture d'un fichier de ton choix et tu copy-paste tout le fichier ouvert dans ce modèle que tu sauves sous un autre nom.

 

Bonne chance,

 

Ayoros.

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Je vais peut-être me planter, mais je me disais un truc. Tu ne pourrais pas créer un modèle fixe, vierge et qui contient le code qui protège.

Et dans ce code en plus, tu paramètres l'ouverture d'un fichier de ton choix et tu copy-paste tout le fichier ouvert dans ce modèle que tu sauves sous un autre nom.

Bonne chance,

Ayoros.

à tous, et à Aroyos :

oui, cette soluce est en test, car c'est la seule que je vois...possible

 

je connais la manip de Dylav, mais je veux rester dans un environnement où la personne qui va faire que ce document sera protégé, ne connait 'rien' des fonctionnalités de Word, et je ne peux pas lui demander de faire cela...

 

j'aimerais au contraire que cela soit transparent pour l'utilisateur... en fait c'est plus difficile que ce que je croyais... car je cumule deux actions à faire avec le même code...

mon document titi.doc est ouvert par un utilisateur lambda (connaissance des 'fonctions' Word quasi nulle), donc avec un bouton 'externe' (macro dans Normal.dot) je sauve sur un répertoire distant un TOTO.doc mais avec le voeux pieux ''document protégé en lecture écriture, en copier / coller, etc' (pour l'instant je connais aussi qu'en faisant F9, tout est possible, puisque on accède à VBA même), puis je resauve titi.doc (sans les protection cette fois)...!!

 

je vais me lancer dans l'idée de la fusion et je vous dirais ce qu'il en est...

 

merci de vos réponses

Lien vers le commentaire
Partager sur d’autres sites

  • Modérateurs
Il y a bien une soluce, mais bon, cela ne protégera rien du tout. Car pour déprotéger, le gars ouvre un autre word, lance l'explorateur vba, puis ouvre ton fichier "protégé" et fait ce qu'il veut avec ta pseudo protection.

La seule soluce est celle de dylav car alors la protection est intégrée dans le code vbe de la feuille.

Avant de te lancer sur le sentier de la guerre, relis bien le post de Scuny et, si nécessaire, demande-lui des compléments d'information... :P

Lien vers le commentaire
Partager sur d’autres sites

	ChangeFileOpenDirectory "D:\" 'passer sur le repertoire de sauvegarde

' sauvegarde sous un autre nom
' password est pour l'ouverutre du fichier
' writepassword pour le protect en écriture

ActiveDocument.SaveAs FileName:="xxx.doc", FileFormat:=wdFormatDocument _
	, LockComments:=False, Password:="", AddToRecentFiles:=True, _
	WritePassword:="xxx", ReadOnlyRecommended:=True, EmbedTrueTypeFonts:=False, _
	 SaveNativePictureFormat:=False, SaveFormsData:=True, SaveAsAOCELetter:= _
	False

   'fermer le doc avec sauvegarde
	ActiveDocument.Close SaveChanges:=wdSaveChanges, OriginalFormat:=wdWordDocument

 

cette exemple de code permet de faire ce que tu veux si il est enregistré dans le normal.dot

 

note que cela n'empêche pas d'ouvrir en lecture seule et de faire des modifs.

cela t'empêche d'enregistrer tes modifs sous le même fichier, mais si tu fais un save as tu peux enregistrer tes modifs

après tu renomes tu vires le fichier protéger et tu remplaces.

 

en clair la protection est toute relative.

 

A+

Lien vers le commentaire
Partager sur d’autres sites

<hors sujet>

(je ne peux faire du pdf, car sinon le pb est résolu, le fichier doit être du Word...it's like that...
Je serais curieux de connaître les raisons (sûrement les meilleures de la Terre, comme toujours) qui t'empêchent d'utiliser un format spécialement prévu pour l'impression et bien doté au niveau de la protection...

</hors sujet>

Lien vers le commentaire
Partager sur d’autres sites

... un fichier qui intègre lui-même de quoi s'auto-décrypter parce que sinon personne ne pourra l'afficher ou l'imprimer ?

A partir du moment où tu es obligé de fournir les données cryptées + de quoi les décrypter à tes utilisateurs, en priant pour qu'ils ne devinent pas comment les décrypter pour faire autre chose que ce que TU veux qu'ils fassent avec, ton système n'est pas bon (il n'empêchera personne de sauver / modifier ton fichier décrypter, et pire il empêchera suffisamment de personnes de juste l'imprimer pour que tu aies des plaintes de tes utilisateurs...)

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...