View Single Post
Old 11-03-2009, 10:12   #3
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3208
In Excel VBA c'è il metodo Application.OnTime. Non esiste un vero e proprio oggetto Timer, e molti pensano che volutamente Ms osteggi questa possibilità per non permettere agli utenti di trasformare un foglio elettronico in un albero di Natale...
A mio avviso non è buona pratica inserire testi o celle lampeggianti, in quanto disturbano parecchio la vista ( personalmente detesto leggere ad es. una pagina web con roba che lampeggia o mi salta davanti... ).

Detto questo, il modo c'è comunque e puoi ottenerlo ad esempio usando queste Function che mi sono fatto io, parametrizzando un esempio trovato sul web... Lascio poi a te l'implementazione :

In un modulo :

Codice:
Public istanteCambio As Double

Public Sub lampeggiaON(nomeFoglio As String, indirizzo As String)

    If Sheets(nomeFoglio).Range(indirizzo).Interior.ColorIndex = 3 Then
        Sheets(nomeFoglio).Range(indirizzo).Interior.ColorIndex = 2
    Else
        Sheets(nomeFoglio).Range(indirizzo).Interior.ColorIndex = 3
    End If
    
    istanteCambio = Now + TimeSerial(0, 0, 1)
    Dim strProcedura As String
    strProcedura = ThisWorkbook.Name & "!'lampeggiaON " & """" & nomeFoglio & """" & "," & """" & indirizzo & """" & "'"
    Application.OnTime istanteCambio, strProcedura, , True

End Sub

Public Sub lampeggiaOFF(nomeFoglio As String, indirizzo As String)

    Sheets(nomeFoglio).Range(indirizzo).Interior.ColorIndex = xlNone
    
    Dim strProcedura As String
    strProcedura = ThisWorkbook.Name & "!'lampeggiaON " & """" & nomeFoglio & """" & "," & """" & indirizzo & """" & "'"
    Application.OnTime istanteCambio, strProcedura, , False

End Sub
Codice per avviare/fermare l'effetto lampeggiamento sulla cella desiderata :

Codice:
    lampeggiaON "Foglio1", "A1"

    lampeggiaOFF "Foglio1", "A1"
E il gioco è fatto.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso