Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
salut à tous
y'a il un code ou un astuce pour qu'un fichier excel s'auto detruit après une période (comme les applications qui ne sont utilisables que pendant une periode d'essai puis ça marche plus)...
j'en serais reconnaissant
a+
Private Sub Workbook_Open()
If Sheets("secret").[A1] = "" Then
Sheets("secret").[A1] = Date + 30
MsgBox "Valable jusqu'au " & Sheets("secret").[A1]
Sheets("secret").visible = xlVeryHidden
ActiveWorkbook.Save
Else
If Date > Sheets("secret").[A1] Then
MsgBox "expiré"
ActiveWorkbook.ChangeFileAccess xlReadOnly
Kill ActiveWorkbook.FullName
ActiveWorkbook.Close False
End If
End If
End Sub
Mais le hic en question, est qu'il sufffit de désactiver les macros ... pour annihiler "la période d''essai".
(ou de mettre en commentaires toutes les procédurees WorkBook_Open() et Aut😵pen() )
-On peut masquer toutes les feuilles à la sauvegarde et les démasquer à l'ouverture.Si on désactive VBA, l'appli est inutilisable.
-Le projet étant protégé, on ne peut pas supprimer le VBA
Code:
Private Sub Workbook_Open()
If Sheets("secret").[A1] = "" Then
Sheets("secret").[A1] = Date + 30
MsgBox "Valable jusqu'au " & Sheets("secret").[A1]
Sheets("secret").visible = xlVeryHidden
ActiveWorkbook.Save
Else
If Date > Sheets("secret").[A1] Then
Sheets("utilisateur").visible = xlVeryHidden
MsgBox "expiré"
ActiveWorkbook.Save
ActiveWorkbook.Close
End If
End If
End Sub
re salut
en fait y'aun petit truc qui me gene
dans le fichier test le code marche
mais quand j'integre ça dans mon petit GPAO
il me signale QUE DATE EST UN OBJET introuvable
voici le code que j'ai utilisé
Sub finish()
Dim FIN_PERIODE_ESSAI As Date
FIN_PERIODE_ESSAI = DateSerial(2008, 8, 4)
If Date > FIN_PERIODE_ESSAI Then
MsgBox ("Période d'essai terminée")
With ThisWorkbook
Application.DisplayAlerts = False
If .Path <> vbNullString Then
.ChangeFileAccess xlReadOnly
kill .FullName
End If
ThisWorkbook.Close SaveChanges:=False
End With
End If
End Sub
j'èspère que je vous gene pas chui encore debutant en VBA !!
merci
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD