LadybugT
13-03-2019, 16:45
Salve,
premetto che non so niente di programmazione ma sono riuscita a creare una macro con una guida on line.
La mia cartella di lavoro ha il compito di individuare, tra i nomi scritti nel foglio "lista nomi", quelli contenuti in un foglio "Lista nera" e segnalarli colorando la cella in "lista nomi" di nero con scritta bianca.
La macro che ho utilizzato č la seguente:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "ARCHIVIO" Then
Dim rng As Range
If Not Intersect(Target, Sh.Range("b8:b1000")) Is Nothing Then
If Target.Rows.Count > 1 Then Exit Sub
With Sheets("LISTA NERA").Range("a:a")
Set rng = .Find(What:=Target.Value, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rng Is Nothing Then
Target.Interior.ColorIndex = 1
Target.Font.ColorIndex = 2
Else
Target.Interior.ColorIndex = xlNone
End If
End With
End If
End If
End Sub
Vorrei adesso che nello stesso foglio "lista nomi" venissero segnalati i nomi presenti in un terzo foglio che chiamerņ "lista rossa", colorando la cella in rosso con scritta bianca.
Ho provato semplicemente a copiare la macro sotto la precedente cambiando solo i codici colore ma mi da errore 'nome non univoco'...
Cosa dovrei fare?
Qualcuno puņ aiutarmi?
Spero di essere stata abbastanza chiara
premetto che non so niente di programmazione ma sono riuscita a creare una macro con una guida on line.
La mia cartella di lavoro ha il compito di individuare, tra i nomi scritti nel foglio "lista nomi", quelli contenuti in un foglio "Lista nera" e segnalarli colorando la cella in "lista nomi" di nero con scritta bianca.
La macro che ho utilizzato č la seguente:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sh.Name <> "ARCHIVIO" Then
Dim rng As Range
If Not Intersect(Target, Sh.Range("b8:b1000")) Is Nothing Then
If Target.Rows.Count > 1 Then Exit Sub
With Sheets("LISTA NERA").Range("a:a")
Set rng = .Find(What:=Target.Value, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rng Is Nothing Then
Target.Interior.ColorIndex = 1
Target.Font.ColorIndex = 2
Else
Target.Interior.ColorIndex = xlNone
End If
End With
End If
End If
End Sub
Vorrei adesso che nello stesso foglio "lista nomi" venissero segnalati i nomi presenti in un terzo foglio che chiamerņ "lista rossa", colorando la cella in rosso con scritta bianca.
Ho provato semplicemente a copiare la macro sotto la precedente cambiando solo i codici colore ma mi da errore 'nome non univoco'...
Cosa dovrei fare?
Qualcuno puņ aiutarmi?
Spero di essere stata abbastanza chiara