Exemplo:
Em um determinado intervalo temos dois 15, macro rodando, um desse dois valores (15) fica "invisível". Fontcolor (White) igual a InteriorColor (White), logo apenas um 15 é visível, o outro permanece lá, é como se fosse uma formatação condicional, só que cobrindo com o "manto da invisibilidade" os outros valores iguais.
O código abaixo faz isso, mas não consegue o mesmo se no intervalo dado, existir formulas.
Sub Visivel()
Const cstrBanco As String = "J3:J20"
Dim lngN As Long
Dim dblBusca As Double
Dim rng As Range
Dim col As Collection
Dim lng As Long
Dim lngOccur As Long
Dim strFirst As String
dblBusca = 1
lngN = 1
Set col = New Collection
On Error Resume Next
For Each rng In Range(cstrBanco)
If rng >= dblBusca Then
col.Add CStr(rng), CStr(rng)
End If
Next rng
On Error GoTo 0
For lng = 1 To col.Count
lngOccur = 0
Set rng = Range(cstrBanco).Find(col(lng))
strFirst = rng.Address
Do
lngOccur = lngOccur + 1
If lngOccur > lngN Then
rng.Interior.Color = vbWhite
rng.Font.Color = vbWhite
End If
Set rng = Range(cstrBanco).FindNext(rng)
Loop While rng.Address <> strFirst
Next lng
End Sub
Postado : 28/09/2014 12:42 pm