Página 1 de 1

[RESOLVIDO] Identificar Linha Inicial em Fórmula do VBA

Enviado: 05 Mai 2023 às 00:30
por SandroLima
Boa noite, pessoal.

Utilizo uma Macro para a formatação das colunas de uma tabela que tem os blocos com o seguinte padrão:

With Tabela.ListColumns("Qtde").DataBodyRange.FormatConditions
'Coluna J = Qtde
.Add Type:=xlExpression, Formula1:="=$J40>0"
With .Item(.Count)
.Interior.Color = RGB(198, 239, 206) 'Preenchimento Verde
End With
'Coluna J = Qtde
.Add Type:=xlExpression, Formula1:="=$J40<0"
With .Item(.Count)
.Interior.Color = RGB(255, 199, 206) 'Preenchimento vermelho
End With
End With

Nesse caso a linha inicial da Tabela é a linha 40 porém essa tabela pode mudar a linha conforme a inserção de outros dados na Planilha... é possível alterar para uma variável a Linha Inicial na Fórmula do Bloco da Macro?

Por exemplo

Em vez de
.Add Type:=xlExpression, Formula1:="=$J40>0"

substituir o valor "40" da linha inicial por uma variável... tentei algo do tipo

.Add Type:=xlExpression, Formula1:="=$J&Ini_Lin>0"

mas dessa forma não funciona.

Alguém sabe como poderia ser feito?

Re: Identificar Linha Inicial em Fórmula do VBA

Enviado: 05 Mai 2023 às 06:23
por Foxtri
Bom dia.
Veja se assim funciona.
.Add Type:=xlExpression, Formula1:="=$J " & Ini_Lin & " >0"
Até
Foxtri

Re: Identificar Linha Inicial em Fórmula do VBA

Enviado: 05 Mai 2023 às 15:26
por SandroLima
Excelente, mestre.

É isso mesmo!

Apenas removi os espaços da sua sugestão.

Em vez de:
.Add Type:=xlExpression, Formula1:="=$J " & Ini_Lin & " >0"

ficou:
.Add Type:=xlExpression, Formula1:="=$J" & Ini_Lin & ">0"

Muito obrigado e tenha um excelente final de semana.