UNE HORLOGE DANS LA BARRE D'OUTIL D'EXCEL, COMME EXEMPLE DE L'UTILISATION DE LA

Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 - 3 déc. 2009 à 18:17
luchixon Messages postés 4 Date d'inscription lundi 3 novembre 2008 Statut Membre Dernière intervention 12 mars 2012 - 12 mars 2012 à 10:28
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50926-une-horloge-dans-la-barre-d-outil-d-excel-comme-exemple-de-l-utilisation-de-la-propriete-isaddin

luchixon Messages postés 4 Date d'inscription lundi 3 novembre 2008 Statut Membre Dernière intervention 12 mars 2012
12 mars 2012 à 10:28
Bonjour,

Merci bigfish_le vrai, ta suggestion fonctionne impeccablement !
Beau bout de code à conserver.
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
23 janv. 2012 à 11:39
Bonjour,

oui effectivement LUCHIXON, renseignement pris tu as raison. Par contre la propriété "Caption" est utilisable pour l'application excel de la version XL2000 donc:

En haut du module1(mais après Option Explicit) tu ajoutes:

Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

un peu plus bas dans ce même module tu déclares une nouvelle variable public :

Public ThisXlhWnd As Long

Puis dans la sub "Workbook_Open()" de "ThisWorkBook" tu remplace la ligne:

SetTimer Application.hWnd, 0, 1000, AddressOf UpDateTime

par les 2 lignes suivantes:

ThisXlhWnd = FindWindow(vbNullString, Application.Caption)
SetTimer ThisXlhWnd, 0, 1000, AddressOf UpDateTime

enfin dans la Sub "Workbook_BeforeClose(Cancel As Boolean)" de ce même "ThisWorkBook" remplace la ligne

KillTimer Application.hWnd, 0

Par les 2 lignes suivantes:

ThisXlhWnd = FindWindow(vbNullString, Application.Caption)
KillTimer ThisXlhWnd, 0

Essai et tien moi informé

A+
luchixon Messages postés 4 Date d'inscription lundi 3 novembre 2008 Statut Membre Dernière intervention 12 mars 2012
19 janv. 2012 à 11:58
Bonjour,

Avec la version 2000 d'Excell, j'obtiens l'erreur suivante :

Erreur d'exécution '438':
Propriété ou méthode non gérée par cet objet.

A la ligne :
SetTimer Application.hWnd, 0, 1000, AddressOf UpDateTime

Après vérification dans l'explorateur d'objet, 'Application' ne possède pas la propriété 'hwnd'

Une idée ?

Merci
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
7 déc. 2009 à 11:43
Merci ADN56 :)
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
3 déc. 2009 à 18:17
bonne idée, code à garder sous le coude, merci.