VBA : supprimer un classeur à sa fermeture

dionys0s

XLDnaute Impliqué
Bonjour le forum ^_^

Je cherche à supprimer (kill) un classeur lors de sa fermeture. Ca peut vous sembler tordu, mais ça ne l'est pas. Ce n'est pas un classeur temporaire (il est enregistré), et l'utilisateur qui va utiliser le fichier va le générer en pdf et l'enregistrer ailleurs. Il n'est donc plus utile et j'aimerais qu'il se supprime automatiquement du répertoire où il est enregistré. J'ai bien trouvé un topic à ce sujet sur XLD (lien) mais qui ne concerne qu'un fichier qui n'a pas été enregistré.

Avez-vous une idée de comment procéder ? Idéalement, j'imagine que ce code serait à intéger dans le ThisWorkbook beforeclose non ?

D'avance merci pour votre aide
 

dionys0s

XLDnaute Impliqué
Re : VBA : supprimer un classeur à sa fermeture

Re tout le monde
bonsoir sigismond

c'est redoutable ce fichier !! Et comment on fait pour se procurer le code ?
En revenche c'est curieux que le fichier de Staple ne marche pas pour toi. J'ai excel 2003 et il fonctionne au poil sur mon ordi.
:confused:

Bon week end tout le monde (derechef)
 

sigismond

XLDnaute Occasionnel
Re : VBA : supprimer un classeur à sa fermeture

re,

Dyonisos, le fait que le code suicide1 fonctionne chez toi m'a titillé.

J'ai réussi à le faire marcher en modifiant un paramètre de sécurité. il s'agit de :
Menu/Outils/Options/Sécurité/Sécurité des macros/Editeurs approuvés/Faire confiance au projet Visual Basic:eek:

Comment j'ai fait le lien entre Erreur 1004 et ça ? ben avec l'aide pardi !

Bon Week End

Sigismond
 

Staple1600

XLDnaute Barbatruc
Re : VBA : supprimer un classeur à sa fermeture

Bonsoir à tous


Bonjour Staple, Softmama,
Re,

Chapeau bas, je crois que j'aurais mis un certain temps à faire ça :)

Les félicitations sont adressés à Masaru Kaji ;)

Bonjour à tous,
...
J'ai essayé le code proposé par Stapple, chez moi sous 2003 il ne marche pas.
Je suis donc remonté aux sources pour faire une recherche sur Masaru Kaji(merci Stapple de nous faire partager tes bons liens).

L'honorable japonais nous propose une deuxième piste que je trouve d'une grande élégance :
Un harakiri par jour suffit ;)
C'est pour cela que je n'avais mis qu'un seul exemple d'AutoTermination d'un workbook (comme disait Arnold :D avant qu'il soit Gouverneur ... )

PS: j'avais omis d'indiquer la manip relatée par Sigismond dans son message de 21h28 :eek:
 
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : VBA : supprimer un classeur à sa fermeture

LOL AU SECOURS,

Depuis que j'ai utilisé pour le tester votre Killer, j'ai un message qui s'affiche à chaque ouverture d'un classeur et mes macros ne s'activent plus.
Box ouverture excel suite ouverture classeur autodestruction.jpg
Pourriez-vous m'aider à trouver ce qu'il faut modifier ?
Un grand Merci :)
Amicalement,
Lionel,
 

Pièces jointes

  • Box ouverture excel suite ouverture classeur autodestruction.jpg
    Box ouverture excel suite ouverture classeur autodestruction.jpg
    40.4 KB · Affichages: 72

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re : VBA : supprimer un classeur à sa fermeture

Bonjour Sigismond .... à toutes et à tous,

Cette macro est super.
Toutefois, j'aimerais pouvoir mettre un code qui lui indique une date d'exécution et je n'y arrive pas.
Code:
Private Sub Workbook_Open()
If "TODAY()=42286" Then
    'MsgBox ("ceci est un message qui ne laisse pas de trace")
    Call Suicide1
End If
End Sub

Pourriez-vous m'aider car ça beugue sur : If "TODAY()=42286" Then
Un grand merci,
Amicalement,
Lionel,
 

dionys0s

XLDnaute Impliqué
Re : VBA : supprimer un classeur à sa fermeture

Bonjour tout le monde,

Suggestion non testée :
VB:
Private Sub Workbook_Open()
If Date = DateSerial(2015, 10, 8) Then
    'MsgBox ("ceci est un message qui ne laisse pas de trace")
    Call Suicide1
End If
End Sub
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
117

Statistiques des forums

Discussions
312 216
Messages
2 086 351
Membres
103 195
dernier inscrit
martel.jg