Bonjour,

j'ai une macro qui remplit l'heure dans une cellule automatiquement toutes les secondes et qui fonctionne très bien sous Excel 2003 mais qui malheureusement ne fonctionne plus sous 2010.
Je me retrouve avec une erreur 1004 sur la ligne 27 (surlignée en jaune par excel) qui me dis "Erreur definie par l'application ou par l'objet.".

Voila le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
 
Dim bstop As Boolean
Dim HeureProchainAppel
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)
bstop = True
HorlogeEnc3
End Sub
 
Private Sub Workbook_Open()
HorlogeEnc3
End Sub
 
Sub HorlogeEnc3()
If bstop = True Then
'Annuler le paramétrage du OnTime programmé précédemment.
Application.OnTime EarliestTime:=HeureProchainAppel, _
    Procedure:="ThisWorkbook.HorlogeEnc3", Schedule:=False
    Exit Sub
End If
 
  Sheets("feuil1").Range("f3").Value = Format(Now, "HH:MM:SS")
 
'Nouveau paramétrage de OnTime
HeureProchainAppel = Now + TimeValue("00:00:01")
Application.OnTime HeureProchainAppel, "ThisWorkbook.HorlogeEnc3", False
 
End Sub

J'ai déjà essayé d'ajouter les arguments de la fonction OnTime comme ci-dessous car je me suis dis qu'il pouvais y avoir de nouvelles options mais j'ai encore cette erreur.

Voila le code modifié.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
 
Dim bstop As Boolean
Dim HeureProchainAppel
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)
bstop = True
HorlogeEnc3
End Sub
 
Private Sub Workbook_Open()
HorlogeEnc3
End Sub
 
Sub HorlogeEnc3()
If bstop = True Then
'Annuler le paramétrage du OnTime programmé précédemment.
Application.OnTime EarliestTime:=HeureProchainAppel, _
    Procedure:="ThisWorkbook.HorlogeEnc3", Schedule:=False
    Exit Sub
End If
 
  Sheets("feuil1").Range("f3").Value = Format(Now, "HH:MM:SS")
 
'Nouveau paramétrage de OnTime
HeureProchainAppel = Now + TimeValue("00:00:01")
Application.OnTime EarliestTime:=HeureProchainAppel, Procedure:="ThisWorkbook.HorlogeEnc3", Schedule:=False
 
End Sub
Si c'est un module à activer lequel est-ce et sinon quelqu'un sait-il me donner une piste dans laquelle je pourrais chercher ?

Cordialement
Thomas