Como posso usar o VBA para formatar símbolos / ícones em células sem usar a formatação condicional
Estou usando o código VBA para colocar a formatação condicional para cobrir valores em uma tabela grande, uso 2 fórmulas por célula para determinar qual dos 3 símbolos usar. Preciso verificar o valor de cada célula com uma célula diferente, dependendo da coluna e, portanto, até onde eu entendi, tenho que colocar minha regra de formatação condicional em cada célula individualmente para garantir que a fórmula esteja correta em cada uma. Isso ocorre porque a formatação condicional não pode receber endereços relativos, você precisa fornecer o endereço exato de cada célula ... correto?
O grande número de instâncias de formatação condicional está diminuindo bastante o meu computador.
É possível colocar símbolos usados pela formatação condicional em uma célula sem usar a formatação condicional?
Talvez um pouco como uma imagem, mas mantendo o valor da célula abaixo, como pode ser feito usando a formatação condicional.
Abaixo, forneci o código que utilizo para colocar a formatação condicional no lugar. Qualquer ajuda é muito apreciada!!
Dim AIs As Range
Dim rng As Range
Dim cl As Range
Set AIs = ActiveSheet.Range("Table")
For Each cl In AIs.Columns
For Each rng In cl.Cells
rng.FormatConditions.AddIconSetCondition
rng.FormatConditions(rng.FormatConditions.Count).SetFirstPriority
With rng.FormatConditions(1)
.ReverseOrder = False
.ShowIconOnly = True
.IconSet = ActiveWorkbook.IconSets(xl3Symbols2)
End With
With rng.FormatConditions(1).IconCriteria(1)
.Icon = xlIconYellowExclamationSymbol
End With
With rng.FormatConditions(1).IconCriteria(2)
.Icon = xlIconRedCross
.Type = xlConditionValueFormula
.Value = "=IF(VALUE(LEFT(" & rng.Parent.Cells(5, rng.Column).Address & _
";1)=0;1;6)"
.Operator = 7
End With
With rng.FormatConditions(1).IconCriteria(3)
.Icon = xlIconGreenCheck
.Type = xlConditionValueFormula
.Value = "=IF(VALUE(LEFT(" & rng.Address & ";1))<=VALUE(LEFT(" & _
rng.Parent.Cells(5, rng.Column).Address & ";1));1;6)"
.Operator = 7
End With
Next rng
Next cl