Bonjour à toutes et à tous,
Je bloque sur ce code depuis quelques jours, c'est trop complexe pour mon niveau, voici ce que je souhaite faire :
Que ma macro tourne automatiquement de 9h à 18h (ce qui marche dans le code ci-dessous) et que toutes les minutes (soit 540 minutes durant cette intervalle de temps), que la donnée présente en « F8 » (donnée d’une action en direct, et donc le prix change constamment sur ma feuille Excel) soit C/L dans la colonne E (à partir de E1).
Ex :
9h00, F8 = 15,22 donc E1=15,22
9h01, F8 = 15,15, E2 = 15.15
9h02, F8= 14,01, E3 = 14,01
etc…
Jusqu’à 18h
18h, F8=22,45 (le cours a explosé ), E540 =22,45
cf. mon « code » ci-dessous (qui correspond pas au but recherché mais je n'y arrive pas)
Dans “ThisWorkbook” :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub Workbook_Open() Call MaMacro End Sub
Dans "Module 1" :
Je vous remercie d’avance de votre aide...
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 Option Explicit Option Private Module Private Const heure_déb As Date = #9:00:00 AM# Private Const heure_fin As Date = #18:00:00 PM# Public Sub MaMacro() If Time < heure_déb Then Application.OnTime heure_déb, "MaMacro", heure_fin Exit Sub ElseIf Time < heure_fin Then Application.OnTime Now + TimeValue("00:01:00"), "MaMacro", heure_fin End If Sheets("Feuil1").Range("E1").FormulaLocal = "=$F$8" Sheets("Feuil1").Range("E1").Copy Destination:=Sheets("Feuil1").Range("E1:E540") End Sub
Fabien
Partager