Ir para conteúdo
Fórum Script Brasil
  • 0

Doubleclick em duas áreas distintas da planilha - Resolvido


Jaime Bezerra

Pergunta

Bom dia!!

Preciso que ao clicar duas vezes em uma área específica da planilha seja executada uma determinada macro, o problema é que tenho duas áreas distintas que deverão executar macros distintas.

Com o doubleclick consigo acionar a macro em apenas uma área, por exemplo área ("B4:B" & Lastrow), ocorre que preciso utilizar a área ("C4:C" & Lastrow) para executar outra macro.

Já tentei utilizar SELECT CASE com o Doubleclick e não funcionou, meu conhecimento de VBA é limitado e não sei como resolver este caso.

Utilizei o Doubleclick por pura analogia de necessidade, clicar duas vezes em uma área específica para acionar outra macro, mas se para o meu caso a solução for outra agradeço se me orientarem.

Abaixo segue a macro que estou utilizando:

 

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim LastRow As Long
   
    With ActiveSheet
        LastRow = ActiveSheet.Cells.SpecialCells(xlLastCell).Offset(-1, 0).Row
    End With
    
If Intersect(Target, Range("B4:B" & LastRow)) Is Nothing Then
Else
MsgBox ("CR Funcionou")
End If

Application.SendKeys "{ESCAPE}"

End Sub

Anexo estou enviando a imagem da planilha do excel onde tenho as informações onde será executado o doubleclick, posso enviar o arquivo que é simples e pequeno, na verdade este arquivo é parte de outro maior com outras macros mas que para facilitar deixei apenas a planilha e a macro que estou com dificuldades.

Grato

Tela.jpg

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa tarde!!

O Osvaldo me deu uma macro que funcionou perfeitamente, abaixo esto postando a macro:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("B4:B" & Cells(Rows.Count, 2).End(3).Row)) Is Nothing Then
  MsgBox "você aplicou duplo clique em uma célula da coluna 'B' da tabela"
  'se o resultado for o esperado substitua a linha acima pelo nome da Macro1
  Cancel = True
ElseIf Not Intersect(Target, Range("C4:C" & Cells(Rows.Count, 3).End(3).Row)) Is Nothing Then
  MsgBox "você aplicou duplo clique em uma célula da coluna 'C' da tabela"
  'se o resultado for o esperado substitua a linha acima pelo nome da Macro2
  Cancel = True
End If
End Sub

 

Resposta postada nos fóruns:

http://www.hardware.com.br

e

https://gurudoexcel.com/forum/

Grato

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...