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

Timer + protection

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 !

malinsard

XLDnaute Junior
Bonjour à tous petite question j'ai créer un bouton afin de déprotéger ma feuille.
Ma question est-il possible de remettre la protection avec un code incluant un Timer?
Merci a tous
Au fait CHAMPION DU MONDE !!!!!!!!!!!
 
Bonsoir malinsard

C'est possible oui, mais... quel est l'interêt de mettre un timer, si tu ne sais pas quand tu vas finir?? 😵

un exemple de compte à rebours de 10sec, clique sur Start_Timer. En B2 > 00:00:10, puis format presonnalisé > ss.

Attention! Avec cette macro, le compte à rebours s'arrête si tu travail sur la feuille.

VB:
Option Explicit
Public counter As Range

Sub Start_Timer()
Set counter = Sheets("Feuil1").Range("b2")
Application.OnTime Now + TimeValue("00:00:01"), "CaR"
End Sub

Sub CaR()
Start_Timer
counter = counter - TimeValue("00:00:01")
If counter = 0 Then Application.OnTime Now + TimeValue("00:00:01"), "CaR", , False: _
counter = TimeSerial(0, 0, 10)     'change ici le temps identique à B2
End Sub
 
Dernière édition:
Merci pour tes réponses mais c'est bon je viens de trouver un code qui me convient, désolé si je n'ai pas envoyer de fichier mais c'est un fichier entreprise que je ne peux pax modifier pour l'envoyer.
Voici mon code:
Option Explicit
Dim NewTime

Sub Enleve_Protect()
If MsgBox("Attention si vous enlever la protection," & Chr(13) _
& "MERCI DE NE PAS TOUCHER AU FORMULES," & Chr(13) _
& "pour déprotéger cliquer sur OUI sinon NON" & Chr(13) _
& "Vous avez 1 minute pour faire vos modifications après quoi la protection sera remise automatiquement!", vbCritical + vbYesNo, "Avertissement") = vbYes Then

ActiveSheet.Unprotect "#######"
End If
TimerStart
End Sub
Sub ShtProtect()
shtInter.Protect "######"

End Sub
Sub TimerStart()
NewTime = Now + TimeValue("00:01:00")
Application.OnTime NewTime, Procedure:="ShtProtect"

End Sub

Encore une fois merci de ton aide!
Bonne journée
 
- 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

Discussions similaires

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