(troppo vecchio per rispondere)
Come si fa a far lampeggiare in modo intermittente una cella
misunenbun
2008-07-25 21:31:02 UTC
Mi piacerebbe, come formattazione condizionale, riuscire a far lampeggiare la
cella che contiene il risultato errato è possibile?
Norman Jones
2008-07-25 21:44:01 UTC
Ciao Misunebun,

Prova:

Nel modulo ThisWorkbook (vedi di sotto)
'=============>>
Option Explicit

'----------------->>
Private Sub Workbook_Open()
On Error Resume Next
ActiveWorkbook.Styles.Add Name:="FLASH"
On Error GoTo 0
End Sub
'<<=============

Alt-F11 per aprire l'Editor di VBA
Ctrl-R per aprire la finestra Gestione Progetti
Fai un doppio clic sull'oggetto ThisWorkbook
Incollarci il suddetto codice
Alt-F11 per tornare in Excel.

In un modulo standard (vedi di sotto),
alla testa del modulo, e prima di qualsiasi
codice, incolla:
'=============>>
Option Explicit

'---------------->>
Public blFlash As Boolean
Dim NextTime As Date

'---------------->>
Public Sub StartFlash()
NextTime = Now + TimeValue("00:00:01")
With ActiveWorkbook.Styles("Flash").Font
If .ColorIndex = 2 Then
.ColorIndex = 3
Else
.ColorIndex = 2
End If
End With
Application.OnTime NextTime, "StartFlash"
End Sub

'---------------->>
Public Sub StopFLash()
On Error Resume Next
Application.OnTime NextTime, "StartFlash", Schedule:=False
ActiveWorkbook.Styles("Flash").Font.ColorIndex = xlAutomatic
End Sub
'<<=============

Alt-F11 per aprire l'Editor di VBA
Menu | Inserisci | Modulo
Incolla il suddetto codice
Alt-F11 per tornare in Excel

Nel modulo del foglio vedi di sotto),
prova:

'=============>>
Option Explicit

'------------------>>
Private Sub Worksheet_Calculate()
Dim Rng As Range
Dim rCell As Range
Const myvalue As Variant = True '<<=== da CAMBIARE

Set Rng = Me.Range("B1:B10") '<<=== da CAMBIARE

Call StopFLash
blFlash = False
For Each rCell In Rng.Cells
With rCell
If .Value = myvalue Then
blFlash = True
.Style = "FLASH"
Else
.Style = "Normal"
End If
End With
Next rCell

If blFlash Then
Call StartFlash
Else
Call StopFLash
End If
End Sub
'<<=============

Si tratta di una routine di evento Worksheet_Calculate..
Per utilizzarla, con il tasto destro del mouse fai click
sulla linguetta del foglio, scegli "Visualizza codice" e
nella finestra del codice incolla la routine.
Alt-F11 per tornare in Excel


Salva, chiudi e riapri il file.


---
Regards,
Norman