Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Formatação Condional por macro

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
fallex
Colaborador
Colaborador
Mensagens: 13
Registrado em: Ter Jul 28, 2020 12:23 pm

Formatação Condional por macro

Mensagem por fallex »

Olá Pessoal, boa tarde.
Preciso de uma ajuda....

Tenho uma tabela com mais de 1000 registros, em linha, e mais de 30 Colunas.....e eu preciso de uma forma de automatizar uma macro que busque nas colunas os valores maiores e menores, aplicando um destaque nestas células, de forma a ficar claro de identificar tais valores. É mais ou menos assim:

Tenho um valor na coluna C2....tipo 10
Eu preciso de uma macro que me compare o valor da celula e2 com o valor da célula c2....e conforme o valor se maior que 10 preencha com verde....se menor preencha com vermelho....mas não para por ai, preciso que esse processo seja feito na e2,f2,g2,h2...até a AH2......depois passe para linha de baixo, repetindo o processo.....comparando a C3 com a E3...etc....
Tem que percorrer as 1000 linhas comparando os valores.

Obrigado a todos.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


LuanaBailon
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Seg Fev 15, 2021 6:33 pm

Re: Formatação Condional por macro

Mensagem por LuanaBailon »

Boa tarde, não sei se entendi a sua pergunta direito, mas veja se esse código ajuda:

Sub FormatacaoCondicional()

Dim i As Long, tlinha As Long
Dim j As Long, tcoluna As Long
Dim verde As Variant, vermelho As Variant
Dim celulacompara As Long

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

tlinha = Range("e2").End(xlDown).Row
tcoluna = Range("e2").End(xlToRight).Column
celulacompara = 3
verde = RGB(147, 255, 196)
vermelho = RGB(255, 197, 197)

For i = 2 To tlinha
For j = 5 To tcoluna
If Cells(i, j) > Cells(i, celulacompara) Then
Cells(i, j).Interior.Color = verde
Else
Cells(i, j).Interior.Color = vermelho
End If
Next
Next

Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub


Responder