Heure sous Excel
Goldrigger
-
goldrigger -
goldrigger -
Bonjour,
J'aimerai savoir comment afficher l'heure de l'ordinateur dans une cellule Excel.
Je connai la formule maintenant() mais elle n'est pas mis à jour.
Ca peut être fait par un compteur qui à chaque fois que le compteur arrive à 60 (60s) on enclenche une macro pour copier la formule maintenant ()?
Merci pour votre aide.
J'aimerai savoir comment afficher l'heure de l'ordinateur dans une cellule Excel.
Je connai la formule maintenant() mais elle n'est pas mis à jour.
Ca peut être fait par un compteur qui à chaque fois que le compteur arrive à 60 (60s) on enclenche une macro pour copier la formule maintenant ()?
Merci pour votre aide.
A voir également:
- Heure sous Excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Changement d'heure - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
8 réponses
bonsoir essaye ca
# Dans la partie workbook du classeur, insérer le code suivant
# 'On initialise le timer système dès l'ouverture du classeur
Private Sub Workbook_Open()
# 'Utilisation de l'API SetTimer toutes les secondes (1000 millisecondes) pour appeler la procédure UpDateTime
SetTimer Application.hWnd, 0, 1000, AddressOf UpDateTime
End Sub
#
# 'A la fermeture du classeur, on nettoie la place en supprimant l'appel au timer système
Private Sub Workbook_BeforeClose(Cancel As Boolean)
# 'On utilise le handle de l'application et l'ID de l'objet liés lors de l'initialisation du timer
KillTimer Application.hWnd, 0
End Sub
#
#
# 'Dans un module séparé, insérer le code suivant
# '==============================================
#
# 'On définit les 2 APIs systèmes qui seront utilisées
Public Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long) As Long
#
# 'La fameuse fonction UpDateTime qui va se charger d'écrire dans la cellule voulue l'heure actuelle à chaque seconde
Public Sub UpDateTime (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)
# 'Afin que la feuille ne se ferme pas de manière inoportune suite à une erreur interne
# '(lors de l'édition d'une cellule ou l'accès à certaines boîtes de dialogue par exemple)
On Error Resume Next
# 'On écrit l'heure selon le format HH:MM:SS sur 24 heures.
# Worksheets(1).Cells(1.1).Value = Format(Time,"HH:MM:SS")
On Error Goto 0
End Sub
# Dans la partie workbook du classeur, insérer le code suivant
# 'On initialise le timer système dès l'ouverture du classeur
Private Sub Workbook_Open()
# 'Utilisation de l'API SetTimer toutes les secondes (1000 millisecondes) pour appeler la procédure UpDateTime
SetTimer Application.hWnd, 0, 1000, AddressOf UpDateTime
End Sub
#
# 'A la fermeture du classeur, on nettoie la place en supprimant l'appel au timer système
Private Sub Workbook_BeforeClose(Cancel As Boolean)
# 'On utilise le handle de l'application et l'ID de l'objet liés lors de l'initialisation du timer
KillTimer Application.hWnd, 0
End Sub
#
#
# 'Dans un module séparé, insérer le code suivant
# '==============================================
#
# 'On définit les 2 APIs systèmes qui seront utilisées
Public Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long) As Long
#
# 'La fameuse fonction UpDateTime qui va se charger d'écrire dans la cellule voulue l'heure actuelle à chaque seconde
Public Sub UpDateTime (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)
# 'Afin que la feuille ne se ferme pas de manière inoportune suite à une erreur interne
# '(lors de l'édition d'une cellule ou l'accès à certaines boîtes de dialogue par exemple)
On Error Resume Next
# 'On écrit l'heure selon le format HH:MM:SS sur 24 heures.
# Worksheets(1).Cells(1.1).Value = Format(Time,"HH:MM:SS")
On Error Goto 0
End Sub
Salut,
J'ai copié la première partie du code dans 'ThisWorkbook' et la deuxième partie dans un module que j'ai insérer.
Mais l'heure ne s'affiche pas dans la cellule que j'ai indiqué, voici ce que j'ai marquer:
Worksheets(2).Cells ("A1").Value = Format(Time, "HH:MM:SS")
J'ai copié la première partie du code dans 'ThisWorkbook' et la deuxième partie dans un module que j'ai insérer.
Mais l'heure ne s'affiche pas dans la cellule que j'ai indiqué, voici ce que j'ai marquer:
Worksheets(2).Cells ("A1").Value = Format(Time, "HH:MM:SS")
ca marchera jamais sans intervention evenementielle
il te faut lancer une macro qui boucle sans cesse avec un timer pour rafraichir ta cellule
tappes ca (j ai mis une fonction auto_open mais tu peux l appeler mon_heure()
Sub auto_open()
'
Dim PauseTime, Start, var
var = 0
PauseTime = 5 ' Définit la durée.
Start = Timer ' Définit l'heure de début.
Do While var <> 1 'ca c est pour que ca s arrete jamais :o))))
Do While Timer < Start + PauseTime
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Cells(1, 1) = Time 'tu affiches l heure en 1.1
Loop
End Sub
il te faut lancer une macro qui boucle sans cesse avec un timer pour rafraichir ta cellule
tappes ca (j ai mis une fonction auto_open mais tu peux l appeler mon_heure()
Sub auto_open()
'
Dim PauseTime, Start, var
var = 0
PauseTime = 5 ' Définit la durée.
Start = Timer ' Définit l'heure de début.
Do While var <> 1 'ca c est pour que ca s arrete jamais :o))))
Do While Timer < Start + PauseTime
DoEvents ' Donne le contrôle à d'autres processus.
Loop
Cells(1, 1) = Time 'tu affiches l heure en 1.1
Loop
End Sub
Salut,
Le problème, c'est qu'avec une macro qui s'éxécute sans arrêter , ba on ne peut rien faire après il y a un bug.
Ta solution affiche bien l'heure mais la macro tu peux pas l'arrêter.
Faudra qu'on trouve autre chose.
Le problème, c'est qu'avec une macro qui s'éxécute sans arrêter , ba on ne peut rien faire après il y a un bug.
Ta solution affiche bien l'heure mais la macro tu peux pas l'arrêter.
Faudra qu'on trouve autre chose.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En fait ce que je voulais faire à la base, c'est de déclencher un événement lorsqu'il est 8h00 ou une autre heure que l'on choisit, mais apparemment c'est peut-être pas la bonne solution.On a peut-être pas besoin d'afficher l'heure mais juste de récupérer l'heure. En fait je sais pas trop . Si vous avez des solutions, sinon je vais rechercher cela.
Merci.
Merci.
Bonjour,
Merci de ta réponse,
J'ai recopié ton code mais comment dis-je faire pour afficher l'heure dans une celule? En effet je débute en visual basic.
C'est dans " Public Sub UpDateTime(ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)"
que je dois inscrire la cellule?
Merci.
Merci de ta réponse,
J'ai recopié ton code mais comment dis-je faire pour afficher l'heure dans une celule? En effet je débute en visual basic.
C'est dans " Public Sub UpDateTime(ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long)"
que je dois inscrire la cellule?
Merci.
hello
je viens de voir que c'est la seule ligne que j'ai pas decommentée...
Worksheets(1).Cells(1.1).Value = Format(Time,"HH:MM:SS")
en gras la cellule ou tu veut que l'heure soit affichée.ici c'est la premiere ,mais tu peut modifier.
J'avais recuperer ça sur codesource quand je commençais
@+
je viens de voir que c'est la seule ligne que j'ai pas decommentée...
Worksheets(1).Cells(1.1).Value = Format(Time,"HH:MM:SS")
en gras la cellule ou tu veut que l'heure soit affichée.ici c'est la premiere ,mais tu peut modifier.
J'avais recuperer ça sur codesource quand je commençais
@+
si tu peux arreter par echap, c est pour ca qu il y a un pausetime avec un doevents
tu peux monter le pausetime a 10 si tu veux.
de toutes facons, tu voulais une heure affichée et rafraichie en prermanence.
y a pas bcp d autres moyens tu peux l afficher par clic par ex avec un timer qui te fait sortir du sub
faut chercher sa solution, mais tout est possible (comme on dit chez adidas :o)) ou nike lol
tu peux monter le pausetime a 10 si tu veux.
de toutes facons, tu voulais une heure affichée et rafraichie en prermanence.
y a pas bcp d autres moyens tu peux l afficher par clic par ex avec un timer qui te fait sortir du sub
faut chercher sa solution, mais tout est possible (comme on dit chez adidas :o)) ou nike lol