Notifications
Clear all

Mudar Cor Linha ao Selecionar Célula

5 Posts
2 Usuários
0 Reactions
1,289 Visualizações
(@eltonpaulo)
Posts: 31
Trusted Member
Topic starter
 

Olá Pessoal

Como não entendo bem de VBA, procurei na net por uma solução, pois preciso que ao selecionar uma célula, a linha mude de cor

Encontrei este código abaixo, porém ele tem um problema, pois quando seleciono a linha ele apaga a cor original/anterior que deveria estar ali deixando simplesmente em branco e como minhas planilhas precisam ter várias cores, este código está incompleto. É possível mudar a cor da linha sem apagar a original?

Dim Linha As Long 'Variavel global
'Função que colore a linha da celula atualmente selecionada
Private Sub Workbook_Activate()
    On Error Resume Next
    Linha = ActiveCell.Row 'Variavel global recebe a o numero da linha atualmente selecionada
    Range(Cells(Linha, 2), Cells(Linha, 7)).Interior.ColorIndex = 6 'Destaca linha
End Sub

'Função para limpar a linha antes de colorir a proxima selecao
Private Sub Workbook_Deactivate()
    On Error Resume Next
    Range(Cells(Linha, 2), Cells(Linha, 7)).Interior.ColorIndex = xlNone 'limpa a cor anterior
End Sub

'Chamada das respectivas funções toda vez que uma nova célula é selecionada
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

   Call Workbook_Deactivate
   Call Workbook_Activate
End Sub
 
Postado : 22/08/2013 10:43 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Não pode usar apenas a parte que vai colorir ??

Dim Linha As Long 'Variavel global
'Função que colore a linha da celula atualmente selecionada
Private Sub Workbook_Activate()
    On Error Resume Next
    Linha = ActiveCell.Row 'Variavel global recebe a o numero da linha atualmente selecionada
    Range(Cells(Linha, 2), Cells(Linha, 7)).Interior.ColorIndex = 6 'Destaca linha
End Sub
 
Postado : 22/08/2013 4:02 pm
(@eltonpaulo)
Posts: 31
Trusted Member
Topic starter
 

Utilizando somente esta parte não acontece nada Alexandre

 
Postado : 22/08/2013 8:11 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Elton, veja se o exemplo ajuda, se a qde de colunas for diferentes precisa ajustar na rotina.

Seleciona Linha Altera Cor

Faça os testes e qq duvida retorne.

[]s

 
Postado : 23/08/2013 8:01 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Isso não te ajuda...?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Application.ScreenUpdating = False
    'Limpa a cor das células
    'Cells.Interior.ColorIndex = 0
    ' Coloca a cor nas células
    Target.Interior.ColorIndex = 8
    Application.ScreenUpdating = True
End Sub

Fonte:
http://msdn.microsoft.com/en-us/library ... 20716.aspx
Att

 
Postado : 24/08/2013 8:20 am