Désactiver imprime écran

aredo

XLDnaute Occasionnel
Bonjour,

J'ai un projet de gestion de stock en vba excel 2000, qui fonctionne très bien depuis plusieurs années. Le programme a été réalisé dans ce forum.
J'aurai voulu que les intervenants ne puissent accéder à la copie d'écran, pour éviter les dérives dans les stocks.
J'ai trouvé sur le net un bout de code, comment l'intégrer? qu'en pensez-vous?
Ou alors existe-t' il une méthode plus simple pour contourner une copie d'écran?

Merci au fofo
fred
 
Dernière édition:

aredo

XLDnaute Occasionnel
Re : Désactiver imprime écran

Re,

Concernant la fermeture de tous les fichiers en cours: dans Workbook_BeforeClose :

If Workbooks.Count = 1 Then Application.Quit
ne convient apparemment pas, seul le fichier en cours se ferme.
Parcontre lorsque je mets la 1re option: Application.DisplayAlerts = False
Application.Quit
sans déclaration préalable. Tout se ferme correctement.
Concernant ma 2ème requête: Dans BeforeClose, le code permet la protection lors d'une fermeture normale. La fonction timer ne déclenche pas cette protection (ce que je voudrais). Je ne sais comment procéder, car la fonction timer est dans Before_Open et Workbook_SheetChange. Vous connaissez peut-être une méthode simple associée à l'évenement timer, qui permettrait cet état.
Dans tous les cas, merci pour votre patience, la progression est nettement appréciable.
bonne soirée
 

Staple1600

XLDnaute Barbatruc
Re : Désactiver imprime écran

Bonsoir à tous

[avis personnel]
1)Tout ce code VBA de protection ne sert à rien si on ouvre le fichier en appuyant sur MAJ
2) Ce fichier fonctionne avec macros, rien n'empêche donc les malandrins éventuels de créer du code vba à vocation "hostile"
(c-a-d permettant de déprotéger un projet VBA, et pour ceux qui ne voudront pas prendre le temps d'écrire, ils leur suffira d'aller faire un tour sur le net )
3) Si VBS est exploitable, la protection est encore plus illusoire :rolleyes:
4) Même si ces tentatives de protection échappent à mon entendement, aredo je te remercie pour ton fil qui m'aura permis de croiser nombre de "pointures vbaistes", (je les salue) et de lire de bien jolis codes VBA.

J'adore Excel, mais quand il faut une appli sécurisée, je choisis une autre voie:
celle de l'insécurité:
Si un collègue bousille un outil que j'ai développé pour le boulot, bah c'est lui qui trinquera, et qui sera au final emmerdé par la hiérarchie.
Je ne protège que mes feuilles ( sans mot de passe) pour préserver formules et format.
[/avis personnel]


PS1: En mettant la main à la poche, tu peux rendre Excel plus sur mais ceci est une autre histoire.

PS2: Pour les extrémistes, ils peuvent encore faire une copie d'écran avec un APN ou leur mobile puis ensuite refaire un classeur Excel etc....

PS3: aredo
J'aurai voulu que les intervenants ne puissent accéder à la copie d'écran, pour éviter les dérives dans les stocks.
Qu'entends-tu par dérive ?
 
Dernière édition:

aredo

XLDnaute Occasionnel
Re : Désactiver imprime écran

Salut Staple,

Effectivement, c'est très simple de contourner une protection de ce type. En fait, la raison pour laquelle j'ai dû envisager des protections est tout autre.
L'intervenant se sert du fichier (en réseau donc souvent sollicité) pour visionner et éventuellement saisir des entrés-sorties. Des erreurs sont apparues ici et là, car l'utilisateur un peu distrait et mal à l'aise avec un clavier pouvait supprimer ou modifier des cellules.
Mon but est de pérenniser cette application. et non d'en faire une forteresse. N'oublions pas que c'est un outil de travail qui améliore les conditions de travail, donc l'intérêt de tous.
Tout ce code VBA de protection ne sert à rien si on ouvre le fichier en appuyant sur MAJ
Les feuilles restent protégées malgré tout.
Concernant la copie d'écran, tout le monde connaît la touche 'print screen', coller dans paint etc...et je retrouvais de temps en temps
des feuilles imprimées un peu partout. Certains utilisateurs se créaient une petite bilbliothèque et donc n'accédaient plus au fichier. Lors de l'inventaire, une dérive non négligeable des stocks fut mis à jour.
Le code de job, que je remercie encore, a toute son importance. Reste mon dernier point évoqué, qui peut encore générer des erreurs.
bonne journée
 

Staple1600

XLDnaute Barbatruc
Re : Désactiver imprime écran

Bonjour aredo, le fil , le forum

Les feuilles restent protégées malgré tout.
La aussi, il suffit d'un rien ( facilement trouvable sur le net) pour déprotéger les feuilles
(qu'il y ait ou pas un mot de passe)


PS: mon précédent message n'était que mon opinion sur la simili-protection disponible sur Excel , mais pas une critique de ton appli.
 

job75

XLDnaute Barbatruc
Re : Désactiver imprime écran

Bonjour aredo, salut Jean-Marie :)

C'est vrai que le fichier d'aredo, ne le prenez pas mal, c'est un peu l'usine à gaz :cool:

Pour répondre au post #47 :

1) je pensais aredo que vous comprendriez : fermer tous les fichiers que l'utilisateur a ouvert avant le vôtre, sans même enregistrer leurs modifications, c'est du viol pur et simple et passible de la cour d'assise :mad:

2) en effet la protection des feuilles ne s'exécutait pas après CloseSurTimer...

Alors voyez le fichier (2) sur cijoint.fr :

Cijoint.fr - Service gratuit de dépôt de fichiers

avec ces macros dans Module1 :

Code:
Sub CloseSurTimer() 'revue par JOB75
On Error Resume Next
Application.OnTime t, "ControleImage", Schedule:=False
Fermeture 'indispensable à cet endroit
ThisWorkbook.Close Not WbkRO
End Sub

Sub Fermeture() 'JOB75
Dim w As Worksheet
With ThisWorkbook
  If Not WbkRO Then
    For Each w In .Worksheets
      If w.Name <> "historiq" And w.Name <> "Users" And w.Name <> "Connexion" Then _
        w.Protect Password:=MdP, DrawingObjects:=True, Contents:=True, Scenarios:=True
    Next
    ActiveWindow.DisplayWorkbookTabs = False
    .Save
  End If
End With
End Sub
Bien sûr la macro Fermeture est aussi appelée depuis Workbook_BeforeClose.

A+
 

aredo

XLDnaute Occasionnel
Re : Désactiver imprime écran

bonsoir, Staple, job

Je conçois parfaitement que les protections soient très vulnérables, par contre, déjouer les tentatives hasardeuses du "clic clic" un peu ds tous les sens peut démotiver bon nombre d'usager.

Concernant la fermeture d' excel, j'avais bien compris le message. Le fondement du fichier ainsi que la procédure employée empêchent tout travail en amont.
Quant aux protections, c'est vraiment une usine à gaz. C'est tout à fait çà! Certainement du ménage en perspective.
Ma foi, encore bravo job pour ce réajustement de code, c'est parfait! que dire de plus. Juste une petite chose: La fonction "timer" ne se déclenche pas si on "double-clic" sur une cellule (feuille déprotégée bien sûr). Peut-on y remédier simplement?
@+
 

job75

XLDnaute Barbatruc
Re : Désactiver imprime écran

Bonjour aredo,

Le fondement du fichier ainsi que la procédure employée empêchent tout travail en amont.

J'aime bien vos certitudes aredo :rolleyes:

On peut toujours ouvrir votre fichier à partir d'un autre fichier avec la commande Ouvrir.

Et se balader ensuite entre les diverses fenêtres avec les touches Ctrl+F6.

On peut d'ailleurs ouvrir un document avec les touches Ctrl+O ou Ctrl+N (ou la barre d'outils)...

Apparemment vous n'avez pas connu mai 68 : désormais il est interdit d'interdire :mad:

Quant au double-clic, vous voulez parlez de celui qui place le curseur dans la cellule ? Alors vous devriez savoir qu'aucune macro ne s'exécutera tant qu'il y sera.

Bien sûr on peut annuler l'effet du double-clic sur toutes les feuilles mais je ne vous aiderai pas d'avantage, voir mai 68.

PS : pas compris comment on déprotège une feuille avec le MdP ninja, mais je m'en tape complètement.

A+
 

aredo

XLDnaute Occasionnel
Re : Désactiver imprime écran

bonjour,

On peut toujours ouvrir le fichier tant qu'il reste protégé, çà me va.
Je n'ai peut-être pas connu mai 68, mais j'ai été bercé par cette époque. A vouloir tout autoriser on a fini par oublier toute forme d'interdiction, ce qui fait peut-être défaut à ce jour!
J'ai apprécié votre abnégation et vous remercie d'avoir enrichi mon vocabulaire vba, il est vrai, un peu désuet. A chacun ses compétences.
Ps : ninja est le mot de passe de toutes les feuilles de travail, déclenché par la macro déprotection , avec une autorisation décrite dans la feuille ‘users’. Pour le reste, un MdP différent.
Bonne continuation
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Désactiver imprime écran

Bonjour à tous

[avis personnel non polémique]
déjouer les tentatives hasardeuses du "clic clic" un peu ds tous les sens peut démotiver bon nombre d'usager.
Une application Excel à mon sens a pour vocation de faciliter le travail de l'utilisateur final.
Dans ce cas ce qui prime c'est l'ergonomie, la facilité d'utilisation.
Si l'utilisateur final a le loisir de perdre son temps a du clic-clic hasardeux ou pas, c'est que le problème n'est pas Excel et sa protection (qui n'en a que le nom), mais le dit utilisateur...ou la non réaction de sa hiérarchie à ce comportement qui impacte négativement le fonctionnement de l'entreprise.
[/avis personnel]

Sinon, la protection "saute" également en utilisant simplement OOO (version portable) sur une clé USB.
Ou encore plus simple en ouvrant le classeur sur un tableur en ligne.
 

Statistiques des forums

Discussions
312 485
Messages
2 088 802
Membres
103 971
dernier inscrit
abdazee