Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 11h06   #1
Candidat au titre de Membre du Club
 
Inscription : février 2007
Messages : 111
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 111
Points : 11
Points : 11
Par défaut Fonction Time en temps réel

Bonjour à tous.

J'ai besoin dans un userform Word d'avoir une zone de texte Label qui affiche l'heure système. Ca c'est bon j'ai le code à saisir :
Code :
1
2
3
4
5
6
Private Sub UserForm_Initialize()
'Renvoie l'heure système actuelle
lblHeure.Caption = Time
Dim MyTime
MyTime = Time
End Sub
Cette fonction permet d'afficher l'heure système au moment de l'ouverture de la macro.
Je souhaite savoir s'il éxiste un code qui fasse en sorte que l'heure défile, comme une horologe classique. Qu'il affiche l'heure système en continue.

Merci d'avance pour ceux qui vont se pencher sur mon besoin.
vbword est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 13h55   #2
pgz
Expert Confirmé Sénior
 
Avatar de pgz
 
Homme Pierre GONZALEZ
Développeur Office VBA
Inscription : août 2005
Messages : 3 412
Détails du profil
Informations personnelles :
Nom : Homme Pierre GONZALEZ
Âge : 58
Localisation : France

Informations professionnelles :
Activité : Développeur Office VBA
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 412
Points : 5 934
Points : 5 934
Bonjour.

Dans la module du formulaire, tu modifies ta procédure
Code :
1
2
3
4
5
Private Sub UserForm_Initialize()
'Renvoie l'heure système actuelle
Me.lblHeure.Caption = Time
Application.OnTime Now + TimeValue("00:00:01"), "subMaJHeure"
End Sub
Et dans un module standard, tu ajoutes
Code :
1
2
3
4
5
6
7
8
Sub subMaJHeure()
 
On Error Resume Next
    NomDuUserForm.lblHeure.Caption = Time
    If Err.Number = 0 Then Application.OnTime Now + TimeValue("00:00:01"), "subMaJHeure"
On Error GoTo 0
 
End Sub
L'affichage sera mis à l'heure toutes les secondes, tant que le formulaire est ouvert.

Cordialement,

PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham
Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon
pgz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 15h05   #3
Candidat au titre de Membre du Club
 
Inscription : février 2007
Messages : 111
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 111
Points : 11
Points : 11
Pourquoi ça marche jamais quand je remet sur mes fichiers
vbword est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 18h57   #4
pgz
Expert Confirmé Sénior
 
Avatar de pgz
 
Homme Pierre GONZALEZ
Développeur Office VBA
Inscription : août 2005
Messages : 3 412
Détails du profil
Informations personnelles :
Nom : Homme Pierre GONZALEZ
Âge : 58
Localisation : France

Informations professionnelles :
Activité : Développeur Office VBA
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 412
Points : 5 934
Points : 5 934
Bonsoir.

As-tu pensé à mettre le vrai nom de ton formulaire à la place de "NomDuFormulaire"?
Il faut ouvrir le formulaire en non modal
Code :
NomDuFormulaire.Show vbModeless
Si ça ne marche toujours pas, faudra voir ton projet, même simplifié.

PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham
Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon
pgz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 19h23   #5
Candidat au titre de Membre du Club
 
Inscription : février 2007
Messages : 111
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 111
Points : 11
Points : 11
Citation:
Envoyé par pgz Voir le message
Il faut ouvrir le formulaire en non modal
C'est ça qu'il manquait ...
Le seul dommage c'est qu'il ne faut pas avoir plusieurs UserForm sur le même projet avec besoin qu'ils puissent tous être ouvert en même temps, car plus rien ne fonctionne ... mais bon c'est pas grave ... grand merci
vbword est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 21h24   #6
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 322
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 322
Points : 29 223
Points : 29 223
Salut,

Perso, je n'utiliserais pas ce genre de code.
Il va consommer de la ressource pour rien.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 22h41   #7
pgz
Expert Confirmé Sénior
 
Avatar de pgz
 
Homme Pierre GONZALEZ
Développeur Office VBA
Inscription : août 2005
Messages : 3 412
Détails du profil
Informations personnelles :
Nom : Homme Pierre GONZALEZ
Âge : 58
Localisation : France

Informations professionnelles :
Activité : Développeur Office VBA
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 412
Points : 5 934
Points : 5 934
Bonjour.

Citation:
Envoyé par Heureux-oli Voir le message
Perso, je n'utiliserais pas ce genre de code.
Il va consommer de la ressource pour rien.
2 ou 3 instructions par seconde, ce n'est pas rédhibitoire, non?
Tu ferais comment?


Cordialement
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham
Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon
pgz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 22h46   #8
pgz
Expert Confirmé Sénior
 
Avatar de pgz
 
Homme Pierre GONZALEZ
Développeur Office VBA
Inscription : août 2005
Messages : 3 412
Détails du profil
Informations personnelles :
Nom : Homme Pierre GONZALEZ
Âge : 58
Localisation : France

Informations professionnelles :
Activité : Développeur Office VBA
Secteur : Conseil

Informations forums :
Inscription : août 2005
Messages : 3 412
Points : 5 934
Points : 5 934
Bonsoir

Citation:
Envoyé par vbword Voir le message
Le seul dommage c'est qu'il ne faut pas avoir plusieurs UserForm sur le même projet avec besoin qu'ils puissent tous être ouvert en même temps, car plus rien ne fonctionne ...
Je n'avais pas compris que tu voulais ouvrir plusieurs formulaires avec chacun une horloge.

OnTime ne peut enregistrer qu'une programmation à la fois.


Cordialement,

PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham
Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon
pgz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 15h54   #9
Candidat au titre de Membre du Club
 
Inscription : février 2007
Messages : 111
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 111
Points : 11
Points : 11
Citation:
Envoyé par Heureux-oli Voir le message
Salut,

Perso, je n'utiliserais pas ce genre de code.
Il va consommer de la ressource pour rien.
Tu as mieux à proposer ?

Citation:
Envoyé par pgz Voir le message
Je n'avais pas compris que tu voulais ouvrir plusieurs formulaires avec chacun une horloge
Plus ou moins ... en fait j'ai 3 userform sur le même fichier Word, avec le besoin qu'ils puissent être tous éxecutés sans restriction d'utilisation (si 2 sont ouvert, cela n'empêche pas de les utiliser l'un ou l'autre) et le ShowModal doit être en False pour tout les userform, donc je ne peux pas avoir tout, c'est l'un ou l'autre.
vbword est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 16h08   #10
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 322
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 322
Points : 29 223
Points : 29 223
Salut,

L'heure système est déjà affichée par Windows, c'est pas si mal.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 16h38   #11
Candidat au titre de Membre du Club
 
Inscription : février 2007
Messages : 111
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 111
Points : 11
Points : 11
Citation:
Envoyé par Heureux-oli Voir le message
Salut,

L'heure système est déjà affichée par Windows, c'est pas si mal.
c'est vrai, mais là de l'avoir qui défile c'est sympa aussi, mais c'est surtout que lors de l'enregistrement du document, il reprend l'heure affichée lors de l'ouverture de la macro ... et si l'enregistrement se fait mettons 10 minutes plus tard par exemple, la donnée est fausse ... c'était surtout pour ça
vbword est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/05/2011, 17h54   #12
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 322
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 322
Points : 29 223
Points : 29 223
Citation:
Envoyé par vbword Voir le message
c'est vrai, mais là de l'avoir qui défile c'est sympa aussi, mais c'est surtout que lors de l'enregistrement du document, il reprend l'heure affichée lors de l'ouverture de la macro ... et si l'enregistrement se fait mettons 10 minutes plus tard par exemple, la donnée est fausse ... c'était surtout pour ça


Il reprend juste une valeur que tu as stockée à un endroit, il suffit lors de la sauvegarde de reprendre l'heure système.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h59.


 
 
 
 
Partenaires

Hébergement Web