Fonction KeyUp en VBA Excel

mortalino
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
- 17 mars 2006 à 17:05
mortalino
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
- 21 mars 2006 à 10:47
Salut à tous,

J'ai des fichiers perso sur le PC du boulot et je ne souhaite pas mettre de mot de passe à excel car j'ai mis un code qui produit un fichier texte, a l'ouverture, en mettant l'heure d'ouverture de mes fichiers.

A l'ouverture, un userform s'affiche demandant un mot de passe, si c'est le bon, mon fichier reste ouvert et n'ouvre pas le fichier texte pour y indiquer l'heure d'ouverture.
Si il est mauvais, le fichier texte s'ouvre donc avec l'heure de tentative d'ouverture, et mon fichier perso se ferme.

Par contre, si la personne qui essaie d'ouvrir mon fichier perso s'y connait en vba, lorsque mon userform demande le mot de passe s'affiche, la personne peut appuyer sur Ctrl + Pause, pour débugger, mon prog s'arrete, et mon fichier reste ouvert.

Comment faire pour que, à l'affichage de mon userform, si la personne fait Ctrl + Pause, faire aussi le log dans le fichier texte et fermé mon fichier ?


Merci pour vos réponses ...

Mortalino

2 réponses

rvblog
Messages postés
792
Date d'inscription
vendredi 4 mars 2005
Statut
Membre
Dernière intervention
12 juin 2012
6
20 mars 2006 à 18:44
Salut Mortalino,

à mon avis, ton problème n'a pas vraiment beaucoup de solutions.
En effet, à part, comme tu as l'air de le penser, en redirigeant le CTRL+PAUSE, comment exécuter du code qui ferait ce que tu demandes, avec le moteur d'exécution arrêté? (je sais, jusque là, je ne t'apprends rien)
Quand bien même, on pourrait toujours faire ouvrir ton fichier à Excel (ou par d'autres moyens, il en existe des tas), et y faire ce que l'on veut!
De plus, il te faudrait trouver un moyen pour débugger! Un moyen que personne ne pourrait trouver dans ton code... auquel on pourrait accéder!
De plus encore, l'exécution du code de ton classeur est dépendante des réglages de sécurité, qui peuvent forcer "l'anti-exécution" de ton applicatif!

Cependant, tu pourrais faire un peu plus confiance à Excel, et verrouiller tes feuilles et ton classeur tant que la signature de l'utilisateur n'est pas authentifiée. Mais rien n'empêcherait d'arrêter à nouveau l'exécution de ton applicatif, une fois l'utilisateur reconnu! (les brigands ont parfois des visages d'anges, amis), et ton classeur ne reverrouillerait pas les feuilles en quittant, et tout le monde aurait accès à ton fichier!
Tu pourrais aussi verrouiller ton projet de code (VBEditor, menu propriété de projet) pour que l'on ne puisse pas y accéder sans mot de passe, mais il existe des tas de moyens sur le net pour casser ton mot de passe et ouvrir ton classeur.

Non, franchement, à part une macro complémentaire xla, bien cachée et verrouillée de surcroît (voire même ds un répertoire blindé) , j'vois pas :), ...
et ton classeur pourrait toujours être déplacé!

ps: ou alors, essaies plutôt de surveiller ton classeur de l'extérieur, là, à mon avis, plus de chances!
rvblogn
0
mortalino
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
21 mars 2006 à 10:47
Salut rvblog,

En fait, en cherchant, j'ai trouvé "Application.EnableCancelKey = xlDisabled ", pour rendre inutilisable les touches Ctrl + Pause.

Pour info, j'ai confiance en Excel, c'est envers mes collègue de travail que j'ai moins confiance. Le problème du Mot de Passe Excel, tu peux le casser très facilement avec certains logiciels (et il n'y a pas de tracage), alors qu'à ma façon, même en hexadécimal, tu as du mal à le trouver, surtout si tu as une grande masse d'infos dans le fichier, et en plus j'ai les infos que je veux (date, heure et nom du fichier tenté d'etre ouvert) dans un fichier texte, chose que je ne peux avoir avec le mot de passe Excel. Et étant une grosse société (ASF), notre système informatique vérifie tous les jours notre système (donc aucun moyen d'installer un logiciel qui surveille les fichiers)

Après, je sais pas si les désassembleurs peuvent ouvrir des .xls !
Concernant l'utilisateur, c'est toujours le même, c'est celui de notre service dans la société (pas d'utilisateurs personnalisés par personnel)

Merci qd même pour les infos, le coup de la macro complémentaire m'a completement echappé, je vais y réfléchir

@ bientôt et bonne journée

Mortalino
0