Fermer excel à une date et heure précise
Résolu/Fermé
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
-
17 janv. 2016 à 19:07
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 19 janv. 2016 à 11:00
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 19 janv. 2016 à 11:00
A voir également:
- Ouverture automatique fichier excel à une heure précise
- Fichier rar - Guide
- Liste déroulante excel - Guide
- Fichier host - Guide
- Comment ouvrir un fichier epub ? - Guide
- Aller à la ligne excel - Guide
4 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 704
18 janv. 2016 à 22:19
18 janv. 2016 à 22:19
Bonjour,
C'est relativement simple, il te suffit de lancer cette macro qui va vivre sa vie jusqu'à l'heure choisie.
Tu choisis bien sûr le jour et l'heure qui peuvent être mis en paramètre de la procédure par exemple.
Tu peux la tester en mettant une heure assez proche.
C'est relativement simple, il te suffit de lancer cette macro qui va vivre sa vie jusqu'à l'heure choisie.
Public Sub fermer() Application.OnTime Now + TimeValue("00:00:01"), "fermer" If Now > DateValue("18/01/2016") + TimeValue("22:14:01") Then Application.Quit ' terminé End Sub
Tu choisis bien sûr le jour et l'heure qui peuvent être mis en paramètre de la procédure par exemple.
Tu peux la tester en mettant une heure assez proche.
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
2
19 janv. 2016 à 06:58
19 janv. 2016 à 06:58
Bonjour,
merci mais,
A la place de la date j'aimerai regarder si c'est lundi, mardi, mercredi, jeudi, vendredi ou samedi.
car chaque jour le programme doit se fermer à une autre heure.
merci d'avance
merci mais,
A la place de la date j'aimerai regarder si c'est lundi, mardi, mercredi, jeudi, vendredi ou samedi.
car chaque jour le programme doit se fermer à une autre heure.
merci d'avance
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 704
19 janv. 2016 à 08:53
19 janv. 2016 à 08:53
Bonjour,
MAIS...
Lorsque l'on pose une question et que l'on veut une réponse précise, il faut donner clairement et exhaustivement les prémices.
J'ai répondu précisément à
"se ferme automatiquement à une date et heure précise"
Tu veux autre chose que ce que tu as demandé alors formule précisément ce que tu veux et tu auras la réponse adaptée, ce que l'on ne peux absolument pas faire avec "car chaque jour le programme doit se fermer à une autre heure"
MAIS...
Lorsque l'on pose une question et que l'on veut une réponse précise, il faut donner clairement et exhaustivement les prémices.
J'ai répondu précisément à
"se ferme automatiquement à une date et heure précise"
Tu veux autre chose que ce que tu as demandé alors formule précisément ce que tu veux et tu auras la réponse adaptée, ce que l'on ne peux absolument pas faire avec "car chaque jour le programme doit se fermer à une autre heure"
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
2
19 janv. 2016 à 10:06
19 janv. 2016 à 10:06
merci j'ai trouvé le code suivant
Sub auto_open()
Dim heure$
Select Case UCase(Feuil2.Cells(1, 1))
Case "LUNDI"
heure = "07:05:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="fermeTout"
Case "MARDI"
heure = "09:40:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "MERCREDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "JEUDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "VENDREDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "SAMEDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "DIMANCHE"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
End Select
End Sub
Sub auto_open()
Dim heure$
Select Case UCase(Feuil2.Cells(1, 1))
Case "LUNDI"
heure = "07:05:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="fermeTout"
Case "MARDI"
heure = "09:40:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "MERCREDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "JEUDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "VENDREDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "SAMEDI"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
Case "DIMANCHE"
heure = "09:25:00" 'ici adapter l'heure
Application.OnTime EarliestTime:=TimeValue(heure), Procedure:="ferme"
End Select
End Sub
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 704
19 janv. 2016 à 11:00
19 janv. 2016 à 11:00
Bonjour,
Tu peux l'avoir en plus réduit :
et il faut mettre la procédure ferme dans un module
Tu peux l'avoir en plus réduit :
Private Sub Workbook_Open() Dim heures ' heures arrêt lundi mardi mercredi jeudi vendredi samedi dimanche heures = Array("07:05:00", "10:52:00", "07:05:00", "07:05:00", "09:25:00", "07:05:00", "09:25:00") Application.OnTime EarliestTime:=TimeValue(heures(Weekday(Date, 2) - 1)), Procedure:="ferme" End Sub
et il faut mettre la procédure ferme dans un module
Public Sub ferme() Application.Quit End Sub