Auto fermeture

G

Greg

Guest
Bonjour le forum,

Je bloque sur une macro d'autofermeture de classeur au bout de 10 s.
J'ai repris une macro existante mais je n'arrive pas à la modifier à ma sauce.
Si quelqu'un à une idée ,je l'en remercie d'avance.

Private Sub auto_open()
'compte = 10
maprocédure
End Sub
Sub maprocédure()
état = True
'Public compte
compte = Range("e2").Value
If compte = 0 Then
Workbooks("CPR.xls").Close 'savechanges = True
'MsgBox "trop tard"
Exit Sub
End If
Application.OnTime Now + TimeValue("00:00:01"), Procedure:="maprocédure", schedule:=état
compte = compte - 1

End Sub
 
Z

Zon

Guest
Salut,

Je mettrais plutôt le application dans le worbokk_open (il faut arreter avec ces auto_open)

pplication.OnTime Now + TimeValue("00:00:10"),"maprocedure"

10 et non 1 pour 10s puis

Sub maprocédure()
Workbooks("CPR.xls").Close 'savechanges = True
End If

Ton E2 il sert à quoi ?

A+++
 
G

Greg

Guest
Merci beaucoup Zon cela fonctionne mais comment peut on arréter la macro avant la fin du decompte.
En effet méme si je ferme le fichier manuellement j'ai au bout du compte a rebourg un BUG qui me dis qu'il ne peut pas fermer le fichier.
Normal je l'ai deja fermer.
Bref à part ce petit souci c'est ok et je t'en remercie
Merci au forum
 
Z

Zon

Guest
Re,

Greg j'ai failli t'ounbier LOl (pas de courriel me disant que tu m'avais répondu). Je crois que le plus simple c'est d'interdir la fermeture du classeur

Déclarer en public Une variable Test en boolean en haut d'un module

dans "Maprocedure mettre Test=true
Sub maprocédure()
Test=true
Thisworkbook.Close True 'ou false
End If

et rajouter dans ler module thisworkbook la procédure suivante:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel = IIf(Test, False, True)
End Sub
 

Discussions similaires

Réponses
2
Affichages
428

Statistiques des forums

Discussions
312 327
Messages
2 087 315
Membres
103 515
dernier inscrit
Cherbil12345