Visualizza versione completa : aggiornare il foglio excel ogni secondo
xing83
21-10-2006, 10.02.34
Salve, ho la necessita di utilizzare dei dati in excel che devono essere aggiornati ogni secondo, come faccio a fargli fare il refresh del foglio in automatico del foglio invece di premere F9?
LoryOne
21-10-2006, 13.13.06
Devi necessarimente fare uso di macro ed API se vuoi un codice elegante come questo:
1 - Prima di tutto inserisci un modulo ed all'interno immetti queste poche righe:
--------------------------------------------
Private Declare Function SetTimer Lib "user32" _
(ByVal hwnd As Long, _
ByVal nIDEvent As Long, _
ByVal uElapse As Long, _
ByVal lpTimerFunc As Long) As Long
Private Declare Function KillTimer Lib "user32" _
(ByVal hwnd As Long, _
ByVal nIDEvent As Long) As Long
Public Sub VBA_TimerProc(ByVal hwnd As Long, ByVal uint1 As Long, _
ByVal nEventId As Long, ByVal dwParam As Long)
'Immetti qui dentro il codice VBA che ti serve eseguire ogni lTimer millisecondi
End Sub
Public Sub AvviaTimer(ByVal lTimer As Long)
'lTimer è espresso in millisecondi
SetTimer ThisWorkbook.Application.hwnd, 1, lTimer, AddressOf VBA_TimerProc
End Sub
Public Sub InterrompiTimer()
KillTimer ThisWorkbook.Application.hwnd, 1
End Sub
---------------------------------------------
All' interno della Sub VBA_TimerProc scrivi il codice che vuoi eseguire, come da commento
2 - Adesso vai in ThisWorkBook ed inserisci queste altre poche righe
---------------------------------------------
Private Sub Workbook_Deactivate()
InterrompiTimer
End Sub
Private Sub Workbook_Open()
AvviaTimer 5000
End Sub
---------------------------------------------
Come esempio ho impostato un timer pari a 5 secondi in Workbook_Open ;)
vBulletin® v3.8.6, Copyright ©2000-2024, Jelsoft Enterprises Ltd.