Ir ao conteúdo
  • Cadastre-se

VBA EXCEL - BLOQUEAR DIGITAÇÃO DE NUMEROS


Ir à solução Resolvido por Basole,

Posts recomendados

Boa tarde

 

Eu estou tentando bloquear que os usuários de uma certa planilha digitem números . Eu tenho um código que eu uso para bloquear a digitação de letras, quando o mesmo digita aquela letra determinada não acontece nada na planilha continua em branco.

 
Sub Desabilitando_teclas()
 
'*** letras ***
 
Application.OnKey "a", "" 'A
Application.OnKey "b", "" 'B
 
 
End Sub
 
Entretanto este mesmo código não funciona para números alguém poderia me ajudar.
 
Att
Link para o comentário
Compartilhar em outros sites

  • Solução

Ola Kelvim, veja se esta macro atende suas necessidades: 

 

1 - Copie e cole em um modulo o cod abaixo:

     (veja, que voce pode incluir outras teclas (caracteres)  nesta linha do codigo:  

    TeclaArray = Array("1", "2", "3", "#", "4", "5", "6", "7", "8", "9", "0") ) 

Sub Desabilita_Numeros()    Dim TeclaArray As Variant     Dim Tecla As Variant     TeclaArray = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")      For Each Tecla In TeclaArray          Application.OnKey Tecla, "Mensagem"      Next Tecla  End SubSub Mensagem()    MsgBox "Aperte outra tecla"End Sub

2 -  Copie e cole no editor de "Esta_Pasta_de_Trabalho"  cod abaixo:

      (Para habilitar a macro tomaticamente,  ao abrir a pasta de trabalho)    

Private Sub WorkBook_Open()       MsgBox "Habilitado a macro: Desabilita_Numeros()"       Call Desabilita_NumerosEnd Sub

  * se preferir desabilite as mensagens incluidas nos codigos  

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Ola Kelvim, veja se esta macro atende suas necessidades: 

 

1 - Copie e cole em um modulo o cod abaixo:

     (veja, que voce pode incluir outras teclas (caracteres)  nesta linha do codigo:  

    TeclaArray = Array("1", "2", "3", "#", "4", "5", "6", "7", "8", "9", "0") ) 

Sub Desabilita_Numeros()    Dim TeclaArray As Variant     Dim Tecla As Variant     TeclaArray = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")      For Each Tecla In TeclaArray          Application.OnKey Tecla, "Mensagem"      Next Tecla  End SubSub Mensagem()    MsgBox "Aperte outra tecla"End Sub

2 -  Copie e cole no editor de "Esta_Pasta_de_Trabalho"  cod abaixo:

      (Para habilitar a macro tomaticamente,  ao abrir a pasta de trabalho)    

Private Sub WorkBook_Open()       MsgBox "Habilitado a macro: Desabilita_Numeros()"       Call Desabilita_NumerosEnd Sub

  * se preferir desabilite as mensagens incluidas nos codigos  

 

 

Boa noite

 

Muito obrigado, o código funcionou corretamente.

 

Atenciosamente

 

Kelvim

Precisa de macro pra isso? Não bastaria realizar a configuração do que precisa pelo VALIDAÇÃO DE DADOS (interface Excel)?

 

 

Neste caso realmente necessitarei de um código, que será alterado de acordo com a ação.

 

 

Att

Ola Kelvim, veja se esta macro atende suas necessidades: 

 

1 - Copie e cole em um modulo o cod abaixo:

     (veja, que voce pode incluir outras teclas (caracteres)  nesta linha do codigo:  

    TeclaArray = Array("1", "2", "3", "#", "4", "5", "6", "7", "8", "9", "0") ) 

Sub Desabilita_Numeros()    Dim TeclaArray As Variant     Dim Tecla As Variant     TeclaArray = Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "0")      For Each Tecla In TeclaArray          Application.OnKey Tecla, "Mensagem"      Next Tecla  End SubSub Mensagem()    MsgBox "Aperte outra tecla"End Sub

2 -  Copie e cole no editor de "Esta_Pasta_de_Trabalho"  cod abaixo:

      (Para habilitar a macro tomaticamente,  ao abrir a pasta de trabalho)    

Private Sub WorkBook_Open()       MsgBox "Habilitado a macro: Desabilita_Numeros()"       Call Desabilita_NumerosEnd Sub

  * se preferir desabilite as mensagens incluidas nos codigos  

 

 

Basole

 

Gostaria de saber se eu porventura fiz algo errado.

 

Fiz conforme você disse, mas não deu muito certo.

 

Att

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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...