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

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

Pour moi de toute manière, ce préliminaire désinvolte montre qu'il ne s'agissait que de bâtir un exercice de style... Ce n'est intéressant que si l'on se bat tout seul avec son problème, non ? :P

Lien vers le commentaire
Partager sur d’autres sites

Désolé, j'ai trop l'habitude de chercher la meilleure solution à un problème donné. Pour moi s'acharner sur un outil qui n'est pas du tout adapté à la réalisation de la tâche demandée est hors-de-question, mais c'est sans doute parce que je suis trop dans une optique "pro" et pas assez dans une optique "la bidouille juste pour le plaisir de bidouiller".

Quoi qu'il en soit, si la solution existait, ça ferait longtemps que les "DRM" auraient disparu de la surface de la planète (vous savez, ces "protections" qui ne servent qu'à empêcher ceux qui ont payé bien cher un contenu ne puissent pas en faire ce qu'ils veulent, pendant que ceux qui ne l'ont pas payé se l'échangent à tout va sur les réseaux P2P...)

Lien vers le commentaire
Partager sur d’autres sites

Tu colles le .doc encrypté par exemple dans les ressources d'un programme, à l'exécution du prog il s'extrait décrypté, tu le lances puis tu le supprimes consécutivement...dans le cas présent l'intérêt ne sera pas tant d'empêcher une reproduction (un simple enregistrer sous et tu récupères le doc...) mais plutôt d'avoir un document inchangé, non modifié à l'issu de chaque lancement.

Lien vers le commentaire
Partager sur d’autres sites

Nous sommes bien d'accord, KC :P

 

ok, à Dilav et ceux qui trouve inutile de chercher un peu:

 

je suis informaticien de formation, le pb n'est pas le coté pro de la chose, j'ai dis dès le début que,

un Pdf serait le plus adapté, mais hélas je n'ai pas cette ressource !

 

Ce n'ai pas un fichier Word que j'envoie à Mamie...

 

c'est une application, un gros logiciel qui 'reçoit' en document lié QUE un format .doc...c'est comme cela, et c'est du 'pro' de ce coté...

 

ceux sont des examens médicaux (nous sommes en 'interne'), fabriqués à un endroit , envoyés sur un répertoire spécifique (et renommés)...mais 'on' voudrait que une fois ouvert par le logiciel (il lance un viewer en fait), les personnes ne puissent pas faire

- en premier lieu de copier /coller ni modification/ajout...

 

vous comprenez le pb...le document 'voyage', je n'ai pas la main tout le temps dessus...juste une fois, lors de l'envoi.

 

bref, cela ne vous intéresse pas, mais je vais essayer de trouver une 'presque pro' attitude...ce n'est pas grave, et je comprends vos remarques...j'en suis le premier critique...

 

merci de vos contributions.

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+

 

 

merci beaucoup, en effet je me suis expliqué sur le coté pro et pas-pro,

 

le fait est que le fichier final qui se trouve sur un répertoire spécifique ne soit pas changé...plus que pouvoir en faire une copie...la valeur du fichier est celle qui est accéssible par le logiciel et pas par une malveillance que l'on voudrait réduire à zéro...

 

il faut simplement que l'on garantisse le fichier original...après, je vois bien que beaucoup me disent que l'on peut toujours tout faire ...mais bon, cela n'est pas le sujet ultime...

 

ce fichier simple feuille doc, se doit d'être le même , on n'y accède que par le logiciel appelant , une fois ouvert, bien sûr qu'un as de contre-bidouilles peu faire des ravages, mais pas sur CE fichier...

 

on doit pouvoir l'imprimer, c'est aussi le but !

 

je pense que je vais clore le débat de fond sur l'utilité, la raison, le coté jouissif de l'exercice de style, ce n'est pas mon truc...ni mon intérêt...justement moins de bidouille il ya mieux je me porte...

 

merci, et à +

Lien vers le commentaire
Partager sur d’autres sites

  • Modérateurs

Je ne comprends pas ce qui peut empêcher de choisir la solution la mieux adaptée : je veux dire Adobe Reader. En effet, rien ne t'empêche de proposer à tout utilisateur un bouton "téléchargez Adobe Reader". De toute manière, dans un milieu professionnel, tous les postes de travail sont forcément équipés de ce logiciel devenu on ne peut plus universel.

 

Alors, libre à toi d'envisager d'autres solutions. De la recherche naît le progrès :P

Lien vers le commentaire
Partager sur d’autres sites

merci beaucoup, en effet je me suis expliqué sur le coté pro et pas-pro,

 

le fait est que le fichier final qui se trouve sur un répertoire spécifique ne soit pas changé...plus que pouvoir en faire une copie...la valeur du fichier est celle qui est accéssible par le logiciel et pas par une malveillance que l'on voudrait réduire à zéro...

 

il faut simplement que l'on garantisse le fichier original...après, je vois bien que beaucoup me disent que l'on peut toujours tout faire ...mais bon, cela n'est pas le sujet ultime...

 

ce fichier simple feuille doc, se doit d'être le même , on n'y accède que par le logiciel appelant , une fois ouvert, bien sûr qu'un as de contre-bidouilles peu faire des ravages, mais pas sur CE fichier...

 

on doit pouvoir l'imprimer, c'est aussi le but !

 

je pense que je vais clore le débat de fond sur l'utilité, la raison, le coté jouissif de l'exercice de style, ce n'est pas mon truc...ni mon intérêt...justement moins de bidouille il ya mieux je me porte...

 

merci, et à +

 

Si c'est simplement pour garantir l'intégrité du fichier il y a encore plus simple, tu fais un md5 dessus à partir de ton logiciel appelant (ou moins complexe -mais moins efficace- tu vérifies la taille)...

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

sinon il existe une solution native sous word le routage.

 

cela permet d'envoyer automatiquement le doc en lecture seule.

la propriété a utiliser est routingslip

 

 

 

tu peux aussi comparer 2 doc avec qqe chose comme ceci : ActiveDocument.Compare Name:="D:\Documents\texte 1.doc"

mais bon le resultat est visuel

Lien vers le commentaire
Partager sur d’autres sites

arf!

 

ca y'est. je l'ai retrouver.

 

j'avais déja fait ce que tu voulais sous excel.

 

il s'agit de faire l'import d'un module et/ou form via vba.

 

note: si ce que tu veux importer existe déja, ca marche pas!

 

je te fait un copier coller de ce j'avais fait a l'époque. (excel 2000)

 

'pour supprimer l'existant

With ActiveWorkbook.VBProject
For Each VBC In .VBComponents
If VBC.Name = "FenP" Or VBC.Name = "IniVariable" Or VBC.Name = "programme" Or VBC.Name = "FenT" Then .VBComponents.Remove VBC
Next VBC
End With

'pour importer (nb:ChemTest est une variable contenant le chemin par défaut)

Application.VBE.ActiveVBProject.VBComponents.Import (ChemTest & "\Update\programme.bas")
Application.VBE.ActiveVBProject.VBComponents.Import (ChemTest & "\Update\IniVariable.bas")
Application.VBE.ActiveVBProject.VBComponents.Import (ChemTest & "\Update\FenT.frm")
Application.VBE.ActiveVBProject.VBComponents.Import (ChemTest & "\Update\FenP.frm")

 

peut être cela t'aidera t'il.

 

A+

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...