Ir para o conteúdo principal

Como evitar a entrada de caracteres especiais no Excel?

Autor: Xiao Yang Última modificação: 2020-07-08

Em alguns casos, queremos apenas inserir letras ou números nas células e evitar a digitação de caracteres especiais, como @ # $% & e assim por diante. Existe alguma função no Excel para evitar a inserção de caracteres especiais quando inserimos valores?

Impedir a entrada de caracteres especiais com a validação de dados

Impedir a entrada de caracteres especiais com o código VBA

Evite a entrada de caracteres especiais com o Kutools para Excel boa ideia 3


Impedir a entrada de caracteres especiais com a validação de dados

A validação de dados do Excel pode ajudar a permitir que você insira apenas os valores alfanuméricos. Faça o seguinte:

1. Selecione um intervalo que você deseja evitar a entrada de caracteres especiais.

2. Então clique Data > Validação de dados > Validação de dados, veja a captura de tela:

doc-prevenir-caracteres-1

3. No Validação de dados caixa de diálogo, clique em Configurações guia e escolha Personalizadas do Permitir lista suspensa e, em seguida, insira esta fórmula =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) no Fórmula caixa de texto, veja a captura de tela:

Observação:A1 indica a primeira célula do intervalo selecionado (da esquerda para a direita).

doc-prevenir-caracteres-1

4. Então clique OK para fechar esta caixa de diálogo, e agora, ao inserir valores que contêm os caracteres especiais na coluna especificada, você aplicou a opção, receberá a seguinte mensagem de aviso.

doc-prevenir-caracteres-1


Impedir a entrada de caracteres especiais com o código VBA

O código VBA a seguir também pode ajudá-lo a evitar os caracteres especiais ao inserir os valores de texto.

1. Segure o ALT + F11 chaves, e abre o Janela Microsoft Visual Basic for Applications.

2. Em seguida, escolha a planilha usada à esquerda Explorador de Projetos, clique duas vezes para abrir o Móduloe, em seguida, copie e cole o seguinte código VBA no espaço em branco Módulo:

Código VBA: impede a entrada de caracteres especiais no Excel

Private Const FCheckRgAddress As String = "A1:A100"
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140905
    Dim xChanged As Range
    Dim xRg As Range
    Dim xString As String
    Dim sErrors As String
    Dim xRegExp As Variant
    Dim xHasErr As Boolean
    Set xChanged = Application.Intersect(Range(FCheckRgAddress), Target)
    If xChanged Is Nothing Then Exit Sub
    Set xRegExp = CreateObject("VBScript.RegExp")
    xRegExp.Global = True
    xRegExp.IgnoreCase = True
    xRegExp.Pattern = "[^0-9a-z]"
    For Each xRg In xChanged
        If xRegExp.Test(xRg.Value) Then
            xHasErr = True
            Application.EnableEvents = False
            xRg.ClearContents
            Application.EnableEvents = True
        End If
    Next
    If xHasErr Then MsgBox "These cells had invalid entries and have been cleared:"
End Sub

doc-prevenir-caracteres-1

Note: No código acima, você pode alterar o intervalo A1: A100 of Const FCheckRgAddress As String = "A1: A100" script para o seu próprio intervalo que você deseja evitar os caracteres especiais.

3. Em seguida, salve e feche esse código e, agora, ao inserir valores de texto com alguns caracteres especiais no intervalo A1: A100, seu valor será apagado imediatamente e você poderá obter a seguinte mensagem de aviso.

doc-prevenir-caracteres-1


Evite a entrada de caracteres especiais com o Kutools para Excel

Na verdade, se você tiver Kutools for Excel - uma ferramenta útil e multifuncional, você pode evitar rapidamente digitar caracteres especiais em uma seleção com seu Impedir Digitação utilidade por um cheque.

Kutools for Excel, com mais de 300 funções úteis, tornam seus trabalhos mais fáceis. 

Depois de instalar Kutools para Excel, faça o seguinte :(Baixe grátis o Kutools para Excel agora!)

1. Selecione uma seleção que você deseja evitar a digitação de caracteres especiais e clique em Kutools > Impedir Digitação > Impedir Digitação. Veja a imagem:
doc prevenir caracteres 10

2. No Impedir Digitação diálogo, verificar Impedir tipo em caracteres especiais opção. Veja a imagem:
doc prevenir caracteres 7

3. Clique Ok, e uma caixa de diálogo aparecerá para lembrá-lo de que removerá a Validação de Dados se aplicar este utilitário e clicar Sim para ir para o próximo diálogo, ele o lembrará de que o utilitário trabalhou na seção. veja a imagem:
doc prevenir caracteres 8

4. Clique OK para fechar a caixa de diálogo e, a partir de agora, uma caixa de diálogo de aviso aparecerá quando você tentar inserir um caractere especial na seleção.
doc prevenir caracteres 9

Gorjeta.Se você quiser parar de digitar valores duplicados em uma coluna, tente usar o Kutools para Excel Impedir duplicado como mostrado na imagem a seguir. Funciona sem limitações em 30 dias, faça o download e tenha um teste gratuito agora.

doc evitar duplicar doc kutools impede a digitação 2


Artigos relacionados:

Como evitar inserir valores com espaços no Excel?

Como evitar entradas duplicadas em uma coluna do Excel?

Melhores ferramentas de produtividade de escritório

🤖 Assistente de IA do Kutools: Revolucionar a análise de dados com base em: Execução Inteligente   |  Gerar Código  |  Crie fórmulas personalizadas  |  Analise dados e gere gráficos  |  Invocar funções do Kutools...
Recursos mais comuns: Encontre, destaque ou identifique duplicatas   |  Excluir linhas em branco   |  Combine colunas ou células sem perder dados   |   Rodada sem Fórmula ...
Super pesquisa: VLookup de múltiplos critérios    VLookup de múltiplos valores  |   VLookup em várias planilhas   |   Pesquisa Difusa ....
Lista suspensa avançada: Crie rapidamente uma lista suspensa   |  Lista suspensa de dependentes   |  Lista suspensa de seleção múltipla ....
Gerenciador de colunas: Adicione um número específico de colunas  |  Mover colunas  |  Alternar status de visibilidade de colunas ocultas  |  Compare intervalos e colunas ...
Recursos em destaque: Foco da Grade   |  Vista de Design   |   Grande Barra de Fórmula    Gerenciador de pastas de trabalho e planilhas   |  Biblioteca (Auto texto)   |  Data Picker   |  Combinar planilhas   |  Criptografar/Descriptografar Células    Enviar e-mails por lista   |  Super Filtro   |   Filtro Especial (filtro negrito/itálico/tachado...) ...
15 principais conjuntos de ferramentas12 Texto Ferramentas (Adicionar texto, Remover Personagens, ...)   |   50+ de cores Tipos (Gráfico de Gantt, ...)   |   Mais de 40 práticos Fórmulas (Calcule a idade com base no aniversário, ...)   |   19 Inclusão Ferramentas (Insira o código QR, Inserir imagem do caminho, ...)   |   12 Conversão Ferramentas (Números para Palavras, Conversão de moedas, ...)   |   7 Unir e dividir Ferramentas (Combinar linhas avançadas, Dividir células, ...)   |   ... e mais

Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para obter o recurso que você mais precisa...

Descrição


Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
Comments (12)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Pessoal, segue formul em portugês com a quantidade de caracteres limitada a 7:

=E(ÉNÚM(SOMARPRODUTO(LOCALIZAR(EXT.TEXTO(A1;LIN(INDIRETO("1:"&NÚM.CARACT(A1)));1);"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ ")));NÚM.CARACT(A1)<8)
This comment was minimized by the moderator on the site
Excelente solucion. como agregas las comillas (") para que sean admitidas?
This comment was minimized by the moderator on the site
Hello herber,

Glad to help. Using the first method, you can use this formula in data validation:
=ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"&CHAR(34))))

The CHAR function takes the ASCII value and returns the corresponding character value. The ASCII value for a double quote is 34. So a double quote will be allowed. Please have a try.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
How to repeat this in other columns?
This comment was minimized by the moderator on the site
When I use your VBA code in excel 2013 it will open up debug option and freezes
This comment was minimized by the moderator on the site
Hi, WilY, if it pops out a dialog as below screenshot shown, just click Yes then OK to enable the code. This issue appears in Excel 2016, too.
This comment was minimized by the moderator on the site
What if i need to prevent in a single cell typing certain characters in combination with length of the text?

For example, i want to prevent the text to be between 5-16 caharacters in comination with certain character prevention? Any advice?
This comment was minimized by the moderator on the site
Maybe you can try the Data Validation function to limit the text length. See screenshot:
This comment was minimized by the moderator on the site
The solution with Data Validation is almost perfect. But I'm able to put "*" character the such protected field. Any advice? Many thanks Pavel
This comment was minimized by the moderator on the site
Instead of SEARCH function try using FIND: =ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))
This comment was minimized by the moderator on the site
how to set length limit ? i mean if i want to set only 12 character or number
This comment was minimized by the moderator on the site
Hello, raj,
To solve your problem, please apply the below formula:
=AND(ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))),LEN(A1)=12)


Please have a try, hope it can help you!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations