Preskoči na glavno vsebino

Kako preprečiti vnos posebnih znakov v Excelu?

V nekaterih primerih želimo samo vnesti črke ali številke v celice in preprečiti vnašanje posebnih znakov, na primer @ # $% & in tako naprej. Ali v Excelu obstajajo funkcije, ki preprečujejo vnos posebnih znakov, ko vstavljamo vrednosti?

S preverjanjem podatkov preprečite vnos posebnih znakov

Preprečite vnos posebnih znakov s kodo VBA

Preprečite vnos posebnih znakov s programom Kutools za Excel dobra ideja3


S preverjanjem podatkov preprečite vnos posebnih znakov

Excel 'Validacija podatkov vam lahko pomaga samo pri vnosu alfanumeričnih vrednosti. Naredite naslednje:

1. Izberite obseg, za katerega želite preprečiti vnos posebnih znakov.

2. Nato kliknite datum > Preverjanje podatkov > Preverjanje podatkov, glej posnetek zaslona:

doc-preprečevanje-znakov-1

3. v Preverjanje podatkov pogovorno okno, kliknite Nastavitve kartico in izberite po meri Iz Dovoli spustnega seznama in vnesite to formulo =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) v Formula besedilno polje, glej posnetek zaslona:

Opomba:A1 označuje prvo celico izbranega obsega (od leve proti desni).

doc-preprečevanje-znakov-1

4. Nato kliknite OK Če želite zapreti to pogovorno okno, in ko vnesete vrednosti, ki vsebujejo posebne znake v določenem stolpcu, uporabite možnost, boste prejeli naslednje opozorilno sporočilo.

doc-preprečevanje-znakov-1


Preprečite vnos posebnih znakov s kodo VBA

Naslednja koda VBA vam lahko pomaga tudi pri preprečevanju posebnih znakov med vnašanjem besedilnih vrednosti.

1. Držite tipko ALT + F11 in odpre tipko Okno Microsoft Visual Basic for Applications.

2. Nato na levi izberite uporabljeni delovni list Raziskovalec projektov, dvokliknite, da odprete Moduliin nato kopirajte in prilepite naslednjo kodo VBA v prazno Moduli:

Koda VBA: preprečite vnos posebnih znakov v Excelu

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-preprečevanje-znakov-1

Opombe: V zgornji kodi lahko spremenite obseg A1: A100 of Zasebni Const FCheckRgAddress As String = "A1: A100" skript za svoj obseg, ki ga želite preprečiti posebnim znakom.

3. Nato shranite in zaprite to kodo in zdaj, ko vnesete besedilne vrednosti z nekaterimi posebnimi znaki v obsegu A1: A100, se vaša vrednost naenkrat počisti in dobite naslednje opozorilno sporočilo.

doc-preprečevanje-znakov-1


Preprečite vnos posebnih znakov s programom Kutools za Excel

Pravzaprav, če že imate Kutools za Excel - priročno in večnamensko orodje, s katerim lahko hitro preprečite tipkanje posebnih znakov v izboru Prepreči tipkanje koristnost z enim preverjanjem.

Kutools za Excel, z več kot 300 priročne funkcije, vam olajša delo. 

Po namestitvi Kutools za Excel, naredite spodaj :(Brezplačno prenesite Kutools za Excel zdaj!)

1. Izberite izbiro, ki ji želite preprečiti tipkanje posebnih znakov, in kliknite Kutools > Prepreči tipkanje > Prepreči tipkanje. Oglejte si posnetek zaslona:
doc prepreči znake 10

2. V Ljubljani Prepreči tipkanje pogovorno okno, preverite Prepreči vnos posebnih znakov možnost. Oglejte si posnetek zaslona:
doc prepreči znake 7

3. klik Okin odpre se pogovorno okno, ki vas opomni, da bo odstranilo preverjanje veljavnosti podatkov, če uporabite ta pripomoček in kliknete Da če se želite pomakniti na naslednje pogovorno okno, vas bo spomnilo, da je pripomoček delal v razdelku glej posnetek zaslona:
doc prepreči znake 8

4. klik OK Če želite zapreti pogovorno okno, se odslej prikaže opozorilno pogovorno okno, ko poskušate v izbor vnesti poseben znak.
doc prepreči znake 9

Nasvet.Če želite v stolpec nehati vnašati podvojene vrednosti, poskusite uporabiti Kutools za Excel Prepreči podvajanje kot je prikazano na naslednjem posnetku zaslona. Popolnoma deluje brez omejitev v 30 dneh, prosim prenesite in si zagotovite brezplačno preskusno različico zdaj

doc prepreči podvajanje doc kutools preprečujejo tipkanje 2


Sorodni članki:

Kako preprečiti vnos vrednosti s presledki v Excelu?

Kako preprečiti podvojene vnose v stolpcu v Excelu?

Najboljša pisarniška orodja za produktivnost

Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...

zavihek kte 201905


Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
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