Ir ao conteúdo
  • Cadastre-se

Excel Excel - quando teclo enter executo funcao vba


Posts recomendados

Boa noite a todos,

 

Estou com a função vba abaixo onde quando a pessoa tecla enter carrrego um menu para ela escolher um nome.

Só que não está funcionando quando teclo o enter ele nao faz nada, ou seja, nao reconhece a tecla.

 

Segue o codigo caso possam me ajudar:

 

Private Sub worksheet_KeyPress(Keycode As Integer)
        
 
    Sheets("Produtos").Unprotect Password:="xxxx"
    ' return, enter
   
    
    If Keycode = 13 Then
  ' If KeyAscii = 13 Then
        If Target.Column = 1 Then UserForm1.Show
        If Target.Column = 3 Then UserForm2.Show
        If Target.Column = 5 Then UserForm4.Show
         ' ActiveSheet.Protect "xxxx"
  End If
   
    Sheets("Produtos").Protect Password:="xxxx"
End Sub
 

Agradeco independente se puderem me ajudar ou não.

 

Muito Obrigada e bom fim de semana.

 

Liege Fernandes

 

 

 

 

 

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

Em 08/01/2021 às 21:08, Alun disse:

Boa noite a todos,

 

Estou com a função vba abaixo onde quando a pessoa tecla enter carrrego um menu para ela escolher um nome.

Só que não está funcionando quando teclo o enter ele nao faz nada, ou seja, nao reconhece a tecla.

 

Segue o codigo caso possam me ajudar:

 

Private Sub worksheet_KeyPress(Keycode As Integer)
        
 
    Sheets("Produtos").Unprotect Password:="xxxx"
    ' return, enter
   
    
    If Keycode = 13 Then
  ' If KeyAscii = 13 Then
        If Target.Column = 1 Then UserForm1.Show
        If Target.Column = 3 Then UserForm2.Show
        If Target.Column = 5 Then UserForm4.Show
         ' ActiveSheet.Protect "xxxx"
  End If
   
    Sheets("Produtos").Protect Password:="xxxx"
End Sub
 

Agradeco independente se puderem me ajudar ou não.

 

Muito Obrigada e bom fim de semana.

 

Liege Fernandes

 

_________________________________________________

 

Em 08/01/2021 às 21:08, Alun disse:

Boa noite a todos.

 

Em 08/01/2021 às 21:08, Alun disse:

Boa noite a todos,

 

Tentei mais esta forma, mas também não deu certo:

 

Private Sub Menu_KeyDown(ByVal keycode As MSForms.ReturnInteger, ByVal Shift As Integer)

' ActiveSheet.Unprotect "xx"
Sheets("Captação").Unprotect Password:="xx"

' nr 19 vbkeybreak
If keycode = 19 Then
If Target.Column = 1 Then UserForm1.Show
If Target.Column = 4 Then UserForm2.Show
If Target.Column = 5 Then UserForm4.Show
End If
' ActiveSheet.Protect "xx"
Sheets("Captação de Produtos").Protect Password:="xx"
End Sub

 

Obrigada.

 

Link para o comentário
Compartilhar em outros sites

Boa tarde.

 

Com duplo clique ela funciona normalmente conforme abaixo, mas quero trocar por uma tecla como F12 ou BREAK por exemplo. Ai que não está funcionando.

 

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' ActiveSheet.Unprotect "xxxx"
Sheets("Produtos").Unprotect Password:="xxxx"
If Target.Column = 3 Then UserForm1.Show
If Target.Column = 5 Then UserForm2.Show
If Target.Column = 1 Then UserForm3.Show
' ActiveSheet.Protect "xxxxx"
Sheets("Produtos").Protect Password:="xxxx"
End Sub

 

 

 

 

 

 

 

Boa tarde. ESte é o codigo do userform1 ou 2, etc......

 

Private Sub ListBox1_Click()
    ActiveCell.Value = ListBox1.Value
    Unload Me
End Sub
Private Sub TextBox1_Change()
    TextoDigitado = TextBox1.Text
    Call PreencheLista
End Sub
Private Sub UserForm_Initialize()
    Call PreencheLista
End Sub
Private Sub PreencheLista()
    Dim ws As Worksheet
    Dim i As Integer
    Dim TextoCelula As String
    Set ws = ThisWorkbook.Sheets("Cadastros")
    i = 9
    ListBox1.Clear
    With ws
        While .Cells(i, 9).Value <> Empty
            TextoCelula = .Cells(i, 9).Value
            If UCase(Left(TextoCelula, Len(TextoDigitado))) = UCase(TextoDigitado) Then
                ListBox1.AddItem .Cells(i, 9)
            End If
            i = i + 1
        Wend
    End With
End Sub

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Boa noite a todos.

 

Para facilitar fiz dois arquivos:

 

1- Duplo clique que funciona perfeitamente e é como uso hoje

2- Com a tecla BREAK ou F12 que é como eu quero que funcione mas esta dando erro

 

Na verdade eles são arquivos do excel .xlsm, mas como aqui não aceita gravei como xlsx. Talvez tenha que salvar com a terminação certa para funcionar.

 

Se puderem dar uma olhada nos dois exemplos. Agradeço muito.

 

Obrigada.

 

 

 

 

 

BREAK_v1 - Cópia - Cópia.xlsx Duplo clique_v1 - Cópia - Cópia (2).xlsx

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...