Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Auto-suppression classeur

stefyu89

XLDnaute Nouveau
Je cherche à réaliser une macro qui supprime définitivement le classeur qui la contient après un certain nombre d'ouvertures du classeur. J'imagine que je ne suis pas le seul à y avoir penser. Voici, une ébauche de mon code :

Sub KillWorkbook()

Static iCumul As Integer
iCumul = iCumul + 1
If iCumul >= 3 Then
Kill ThisWorkbook.Path + "\" + ThisWorkbook.Name
End If
End Sub
Ce code est placé dans un module standard et je l'appelle au sein d'une procédure événementielle "Workbook_Open". Merci d'avance pour votre aide.
Cordialement
 

Jacky67

XLDnaute Barbatruc
Bonjour,
On ne peut pas supprimer un classeur si celui-ci est actif...
Une solution consiste à ouvrir un classeur tiers quand le cumul est atteint,
qui lui comprend le code de fermeture du ficher à supprimer et le détruit
Dans le fichier tiers cela pourrait ressembler à ceci...
Code:
Private Sub Workbook_Open()
Workbooks("Classeur1.XLSM").Close False
Kill ThisWorkbook.Path & "\" & "Classeur1.xlsm"
End Sub
Avec adaptation du chemin et du nom du classeur
 
Dernière édition:

stefyu89

XLDnaute Nouveau
Merci beaucoup pour la réponse ! Est ce qu'il serait possible de mettre les 2 fichiers dans un dossier ZIP, de cacher le fichier contenant la macro de destruction soit manuellement soit avec un code windows soit en lui donnant un format étranger qui empêcherait à la fois la copie du fichier à détruire et sa relocalisation (je veux dire lui changer de dossier) ? Je sais que mes questions donnent l'impression que je travaille pour l'agent 007 mais bon ...
Magnifique ! Avoir la chance de poser des questions et de construire collectivement un savoir ! Merci aux webmasters pour ce forum et à tous ceux qui y participent activement ou occasionnellement.
 

stefyu89

XLDnaute Nouveau
Merci pour ta réponse ! Est ce qu'il serait possible, par code, d'empêcher la copie et la relocalisation dudit fichier à détruire ainsi que du fichier contenant la macro destructrice ? Cette dernière peut-elle être cachée dans un dossier ZIP apparaissant dans un windows sous un format différent d'un classeur Excel ou en mode caché sans être accessible par l'auteur ?
Je précise que je ne travaille pas pour James Bond ni que je souhaite hacker ou implenter un virus : c'est juste que ma curiosité est en train de s'exprimer. Merci pour vos réponses à tous !
 

Jacky67

XLDnaute Barbatruc
A ces questions, je n'ai pas de réponses, en tous cas, moi je ne sais pas faire, désolé.
 

blord

XLDnaute Impliqué
Bonjour,
Que je sache, Excel ne peut pas empêcher la copie d'un fichier dans Windows...
Si on veut s'assurer que le fichier ne s'exécute que dans un répertoire précis, il suffit de récupérer le ThisWorkbook path lors de l'ouverture et de le comparer à ce qui est attendu,si le résultat n'est pas bon, fermer le fichier...

blord
 

Discussions similaires

Réponses
3
Affichages
825
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…