Notifications
Clear all

MACRO - ERRO 91

7 Posts
3 Usuários
0 Reactions
1,446 Visualizações
(@thiago-r)
Posts: 30
Eminent Member
Topic starter
 

Pessoal, está dando erro 91..não conheço muito de Macro! Alguém me ajuda?

Dim LinhaSelecAnterior As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

ActiveSheet.Unprotect "1205@2017NqF"

Select Case ActiveCell.Row
 Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
  Select Case LinhaSelecAnterior.Row [b](ESSA LINHA FICA EM AMARELO)[/b]
  
   Case Is <> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
   
    Rows(LinhaSelecAnterior.Row).Interior.ColorIndex = 0
    
     End Select

Case Else

Rows(ActiveCell.Row).Interior.ColorIndex = 24
If Not LinhaSelecAnterior Is Nothing Then
If ActiveCell.Row <> LinhaSelecAnterior.Row Then

Rows(LinhaSelecAnterior.Row).Interior.ColorIndex = 0

End If

End If

Set LinhaSelecAnterior = ActiveCell

End Select

ActiveSheet.Protect "1205@2017NqF"
  
End Sub
 
Postado : 08/06/2017 12:15 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Thiago R,

Boa tarde!

Por gentileza, anexe seu arquivo aqui mesmo no fórum, compactado com .ZIP, pois assim podemos analisar, rodar o código total e depurar para ver aonde está o erro.

Aproveite também e já explique como se dá o processo para se chegar ao erro. O que é necessário fazer.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 08/06/2017 12:39 pm
(@thiago-r)
Posts: 30
Eminent Member
Topic starter
 

Wagner obrigado pelo retorno! Amigo é bem simples, veja no exemplo que quando vc abrir o arquivo, o cursor está selecionando a linha Nº 28, assim que vc abrir faça o primeiro clique na planilha entre as linhas 1 a 17...vc vai ver que o erro vai surgir. Se vc realizar o primeiro clique na linha 18, 19, 20...não vai dar esse erro!!! Eu não sei o pq dá esse erro!!! Essa planilha é apenas um exemplo. Tenho essa necessidade pois, na minha empresa temos um formulário onde preciso deixar a linha destacada para a facilitar o entendimento mediante a seleção do colaborador. Tenho ainda uma particularidade, tenho várias células bloqueadas onde não posso permitir que eles selecionem, por isso adicionei o código de desbloqueio e bloqueio antes e após a Macro...justamente pq dava erro ao executar. Não sei se fui claro, de qualquer forma agradeço a atenção.

OBS.: Nas linhas 1 a 17 tenho apenas duas células que são desbloqueadas, todas as outras são bloqueadas para edição e eu não quero destacar nenhuma delas mediante seleção.

Obrigado!

Abs.

 
Postado : 08/06/2017 1:25 pm
(@osvaldomp)
Posts: 858
Prominent Member
 

Experimente o código abaixo no lugar do seu.
Funciona no intervalo 'A2:W17'.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 Me.Protect "1205@2017NqF", UserInterFaceOnly:=True
 Range("A2:W17").Interior.ColorIndex = 0
 If Intersect(Target, Range("A2:W17")) Is Nothing Then Exit Sub
 Range("A" & Target.Row, "W" & Target.Row).Interior.ColorIndex = 24
End Sub

Osvaldo

 
Postado : 08/06/2017 5:05 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Thiago,

Boa noite!

Não sei se entendi bem a sua necessidade. Entendi que você deseja que a linha selecionada pelo usuário esteja destacada. É isso? Se for isso, eu modifiquei o código para que isso possa acontecer. Fiz de modo que possa selecionar até a linha 100. Se houver necessidade de mais linha, basta alterar isso no código que está devidamente comentado.

Veja se é assim.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 08/06/2017 5:58 pm
(@thiago-r)
Posts: 30
Eminent Member
Topic starter
 

Osvaldo o seu código me atendeu melhor, aliás, ele me atendeu perfeitamente. Obrigado!!

Wagner obrigado também, porém, o seu código quando eu vou abrir no meu PC o erro 91 acontece novamente. Mesmo assim, obrigado pela ajuda!!!

Abraços!

 
Postado : 09/06/2017 5:48 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Thiago,

Ok Thiago. Tudo bem.

Todavia, desenvolvi o mesmo ontem à noite em casa e não tive nenhum problema com ele no meu notebook em casa e nem aqui, agora no trabalho. Roda normalmente. Achei estranho ele dá erro 91 no seu micro.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 09/06/2017 6:09 am