Voglio monitorare un valore e ricevere notifiche via email quando determinate condizioni sono soddisfatte. Ho una macro in questo modo:Come ottenere VBA Macro per eseguire continuamente in background?
Do While True
Worksheet.Calculate
If Value > 10 Then
SendEmail
End If
Sleep 60*CLng(1000)
Loop
Tuttavia, quando si esegue questo, intasa l'intero programma e si accende non risponde se cerco di fare qualsiasi cosa.
Esiste comunque lo scopo di farlo funzionare in background o almeno non arrestare il programma?
Quello che stavo facendo prima era usare VBScript per aprire un foglio di calcolo non visibile e VBScript funzionava continuamente in background, monitorando la condizione e funzionava bene, ma il mio cliente vuole davvero una GUI e che sia nel programma stesso .
Qualche idea?
Se è necessario monitorare il valore di una cella di quanto non sia necessario eseguire continuamente un codice, ma utilizzare l'evento di modifica del foglio di lavoro. –
@ MátéJuhász Non penso che il valore cambierà da solo. Deve essere richiesto a. Aggiornerò il codice di esempio. Posso ancora utilizzare l'evento di modifica del foglio di lavoro? –
Dai un'occhiata qui: http://www.mrexcel.com/forum/excel-questions/79144-automatically-update-time-date.html, potrebbe esserti utile. –