Notifications
Clear all

Colorindo Linhas à partir de uma linha pré determinada

4 Posts
3 Usuários
0 Reactions
1,102 Visualizações
(@tonilanis)
Posts: 32
Eminent Member
Topic starter
 

Olá amigos, boa tarde.
Tenho o código abaixo que realiza razoavelmente o meu intento. Note que da forma como esta, ao ser selecionado uma célula a linha entre a coluna 2 e 7 são coloridas de amarelo. Pois bem, o que atenderá melhor o que desejo destacar será que apenas as linhas de 8 abaixo sejam destacadas na planilha ativa. Como alterar esse código para ficar como quero?

Dim Linha As Long 'Variavel global

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ColunaInicial As Integer
Dim ColunaFinal As Integer
On Error Resume Next

ColunaInicial = 2 'Coluna inicial a ser destacada
ColunaFinal = 7 ' Coluna final a ser destacada

'limpa a cor anterior
ThisWorkbook.ActiveSheet.Range(Cells(Linha, ColunaInicial), Cells(Linha, ColunaFinal)).Interior.ColorIndex = xlNone
'Variavel global recebe a o numero da linha atualmente selecionada
Linha = ActiveCell.Row
'Destaca linha atualmente selecionada
ThisWorkbook.ActiveSheet.Range(Cells(Linha, ColunaInicial), Cells(Linha, ColunaFinal)).Interior.ColorIndex = 6
End Sub

 
Postado : 06/01/2016 1:30 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Tente algo assim

If ActiveCell.Rows > 7 Then

Aqui vai a parte do codigo que deve ser executado em caso verdadeiro

End If

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 06/01/2016 3:09 pm
(@edivan)
Posts: 119
Estimable Member
 

Boa noite!

Use assim conforme o amigo MPrudencio Citou:

Dim Linha As Long 'Variavel global

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ColunaInicial As Integer
Dim ColunaFinal As Integer
On Error Resume Next

ColunaInicial = 2 'Coluna inicial a ser destacada
ColunaFinal = 7 ' Coluna final a ser destacada

If ActiveCell.Row > 7 Then
'limpa a cor anterior
ThisWorkbook.ActiveSheet.Range(Cells(Linha, ColunaInicial), Cells(Linha, ColunaFinal)).Interior.ColorIndex = xlNone
'Variavel global recebe a o numero da linha atualmente selecionada
Linha = ActiveCell.Row
'Destaca linha atualmente selecionada
ThisWorkbook.ActiveSheet.Range(Cells(Linha, ColunaInicial), Cells(Linha, ColunaFinal)).Interior.ColorIndex = 6
End If
End Sub

Visite meu blog:

programacaopassoapasso.wordpress.com

 
Postado : 06/01/2016 7:26 pm
(@tonilanis)
Posts: 32
Eminent Member
Topic starter
 

Muito grato. Foi mais simples do que pensei. Valeu!

 
Postado : 07/01/2016 9:07 am