Neste artigo, criaremos uma macro para aplicar a formatação condicional na área selecionada.
Usamos números aleatórios como dados de amostra para demonstrar o funcionamento da macro.
A macro pode ser executada clicando no botão “Find Max” na planilha “Main”.
Explicação lógica
Criamos a macro “ConditionalFormat” para aplicar a formatação condicional à área selecionada. Esta macro destaca a célula na cor violeta, que contém o valor máximo na área selecionada.
Antes de executar esta macro, deve-se selecionar uma área na qual deseja aplicar a formatação condicional.
Por exemplo, selecionamos um intervalo de células de B9 a F17 como a amostra dos dados selecionados.
Ao executar a macro após selecionar a área de amostra, a formatação condicional é aplicada na área selecionada e a célula D16, que contém o valor mais alto (97), será destacada na cor violeta.
Agora, pegue outra amostra. Selecionamos a faixa de células B10 a F13 como segunda área de amostra.
Após selecionar a segunda área de amostra, clique no botão “Find Max” para executar a macro. A formatação condicional será aplicada na área selecionada e a célula C11 será destacada na cor violeta, pois contém o valor máximo (92) na área selecionada.
Depois de executar a macro para dois exemplos diferentes, a formatação condicional é aplicada a ambos. Nos dados da amostra, ambas as células C11 e D16 serão destacadas na cor violeta, pois representam valores máximos em suas respectivas amostras.
Se os valores em qualquer uma das amostras forem alterados e um dos valores recém-inseridos for o valor mais alto, a célula com aquele valor específico será destacada.
Explicação do código
Selection.FormatConditions.Delete
O código acima é usado para excluir qualquer formatação condicional aplicada aos dados selecionados.
Selection.FormatConditions.Add Type: = xlExpression, Formula1: = _
"=" & Selection.Cells (1) .Address (False, False) & "= MAX (" & Selection.Address & ")"
O código acima é usado para adicionar uma nova formatação condicional. O tipo especifica que a expressão é usada para aplicar a formatação da condição. A fórmula da expressão é definida na Fórmula 1.
Selection.Cells (1) .Address (False, False)
O código acima é usado para fazer referência ao endereço da primeira célula na seleção.
"=" & Selection.Cells (1) .Address (False, False) & "= MAX (" & Selection.Address & ")"
O código acima é usado para comparar o valor da primeira célula selecionada com o valor máximo da seleção.
Selection.FormatConditions (1) .Interior.ColorIndex = 39
O código acima é usado para atribuir a cor violeta à célula que satisfaça a condição da formatação.
Siga abaixo para o código
Sub ConditionalFormat () With Selection 'Excluir qualquer formatação condicional anterior .FormatConditions.Delete' adicionar formatação condicional à célula selecionada .FormatConditions.Add Type: = xlExpression, Formula1: = _ "=" & Selection.Cells (1) .Address (False , False) & "= MAX (" & Selection.Address & ")" 'Atribuindo cor violeta para a formatação condicional .FormatConditions (1) .Interior.ColorIndex = 39 End With End Sub
Se você gostou deste blog, compartilhe com seus amigos no Facebook. Além disso, você pode nos seguir no Twitter e no Facebook.
Gostaríamos muito de ouvir de você, diga-nos como podemos melhorar nosso trabalho e torná-lo melhor para você. Escreva para nós no site de e-mail