Ciao Dario,
Salve vorrei creare una cella che lampeggi in Excel (colore rosso) nel momento che il valore è inferiore a quello di un'altra cella .
Prova qualcosa del genere:
- Fai clic dx sulla linguetta del foglio di interesse
- Seleziona l'opzione Visualizza Codice dal **** menu contestuale risultante
- Incolla il seguente codice:
'========>>
Option Explicit
'-------->>
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng\_Confronto As Range, Rng As Range
Dim rCell As Range
Const sCella\_di\_Confronto As String = **"A1" '<<=== Modifica**
Const sCella\_da\_Modificare As String = **"A10" '<<=== Modifica**
With Me
Set Rng\_Confronto = .Range(sCella\_di\_Confronto)
Set Rng\_Modifica = .Range(sCella\_da\_Modificare)
End With
Set Rng = Intersect(Rng\_Modifica, Target)
If Not Rng Is Nothing Then
Call StopFLash
blFlash = False
If Rng\_Modifica.Value < Rng\_Confronto.Value Then
blFlash = True
End If
If blFlash Then
Call StartFlash
Else
Call StopFLash
End If
End If
End Sub
'<<========
- Ctrl+R per accedere alla finestra Project Explorer ('Gestione progetti')
- Fai doppio clic sul modulo ThisWorkbook (Questa_cartella_di_Lavoro) del file e incolla il seguente codice:
'========>>
Option Explicit
'-------->>
Private Sub Workbook_Open()
Dim SH As Worksheet
Dim Rng As Range
Const sFoglio As String = "Foglio1" '<<=== Modifica
Set SH = Me.Sheets(sFoglio)
Set Rng = SH.Range(sCella\_da\_Modificare)
With Rng
.Value = .Value
End With
End Sub
'-------->>
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call StopFLash
End Sub
'<<========
- Alt+IM per inserire un nuovo modulo di codice
- Nel nuovo modulo vuoto, incolla il seguente codice:
'========>>
Option Explicit
Public blFlash As Boolean
Public Rng_Modifica As Range
Dim NextTime As Date
Public Const sCella_da_Modificare As String = "A10" '<<=== Modifica
'-------->>
Public Sub StartFlash()
NextTime = Now + TimeValue("00:00:01")
With Rng\_Modifica.Font
If .ColorIndex = 2 Then .ColorIndex = 3 Else .ColorIndex = 2
End With
Application.OnTime NextTime, "StartFlash"
End Sub
'-------->>
Public Sub StopFLash()
On Error Resume Next
Application.OnTime NextTime, "StartFlash", Schedule:=False
Rng\_Modifica.Font.ColorIndex = xlAutomatic
End Sub
'<<========
- Alt+Q per chiudere l'editor di VBA e tornare a Excel
- Salva il file con l'estensione xlsm.
Potresti scaricare il mio file di prova Dario20220214.xlsm
===
Regards,
Norman
