Skip i'r prif gynnwys

Sut i atal cymeriadau arbennig rhag dod i mewn i Excel?

Ar gyfer rhai achosion, rydyn ni eisiau rhoi llythrennau neu rifau mewn celloedd yn unig, ac atal teipio'r cymeriadau arbennig, fel @ # $% & ati. A oes unrhyw swyddogaethau yn Excel i atal y cymeriadau arbennig rhag dod i mewn pan fyddwn yn mewnosod gwerthoedd?

Atal nodau arbennig rhag mynd i mewn gyda Dilysu Data

Atal nodau arbennig rhag mynd i mewn gyda chod VBA

Atal cymeriadau arbennig rhag mynd i mewn gyda Kutools ar gyfer Excel syniad da3


Atal nodau arbennig rhag mynd i mewn gyda Dilysu Data

Gall Dilysu Data Excel 'helpu i'ch galluogi i nodi'r gwerthoedd alffaniwmerig yn unig. Gwnewch fel a ganlyn:

1. Dewiswch ystod rydych chi am atal y cymeriadau arbennig rhag dod i mewn.

2. Yna cliciwch Dyddiad > Dilysu Data > Dilysu Data, gweler y screenshot:

doc-atal-cymeriadau-1

3. Yn y Dilysu Data blwch deialog, cliciwch Gosodiadau tab, a dewiswch Custom oddi wrth y Caniatáu rhestr ostwng, yna nodwch y fformiwla hon =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) i mewn i'r Fformiwla blwch testun, gweler y screenshot:

Nodyn:A1 yn dynodi cell gyntaf yr ystod o'ch dewis (o'r chwith i'r dde).

doc-atal-cymeriadau-1

4. Yna cliciwch OK i gau'r ymgom hwn, ac yn awr pan fyddwch chi'n nodi gwerthoedd sy'n cynnwys y nodau arbennig yn y golofn benodol rydych chi wedi defnyddio'r opsiwn, fe gewch chi'r neges rybuddio ganlynol.

doc-atal-cymeriadau-1


Atal nodau arbennig rhag mynd i mewn gyda chod VBA

Gall y cod VBA canlynol hefyd eich helpu i atal y nodau arbennig wrth nodi'r gwerthoedd testun.

1. Daliwch i lawr y ALT + F11 allweddi, ac mae'n agor y Ffenestr Microsoft Visual Basic for Applications.

2. Yna dewiswch eich taflen waith ail-law o'r chwith Archwiliwr Prosiect, cliciwch ddwywaith arno i agor y Modiwlau, ac yna copïo a gludo gan ddilyn y cod VBA i'r gwag Modiwlau:

Cod VBA: atal cymeriadau arbennig rhag mynd i mewn i 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-atal-cymeriadau-1

Nodyn: Yn y cod uchod, gallwch newid yr ystod A1: A100 of Preifat Const FCheckRgAddress As String = "A1: A100" sgriptiwch i'ch ystod eich hun eich bod am atal y cymeriadau arbennig.

3. Yna arbedwch a chau'r cod hwn, ac yn awr, pan fyddwch chi'n nodi gwerthoedd testun gyda rhai nodau arbennig yn yr ystod A1: A100, bydd eich gwerth yn cael ei glirio ar unwaith, a gallwch chi gael y neges rybuddio ganlynol.

doc-atal-cymeriadau-1


Atal cymeriadau arbennig rhag mynd i mewn gyda Kutools ar gyfer Excel

A dweud y gwir, os oes gennych chi Kutools ar gyfer Excel - offeryn defnyddiol ac aml-swyddogaethol, gallwch atal teipio cymeriadau arbennig mewn detholiad gyda'i Atal Teipio cyfleustodau gan un siec.

Kutools ar gyfer Excel, gyda mwy na 300 swyddogaethau defnyddiol, yn gwneud eich swyddi yn haws. 

Ar ôl gosod Kutools ar gyfer Excel, gwnewch fel isod:(Lawrlwythwch Kutools Am Ddim ar gyfer Excel Nawr!)

1. Dewiswch ddetholiad rydych chi am atal cymeriadau arbennig rhag teipio, a chlicio Kutools > Atal Teipio > Atal Teipio. Gweler y screenshot:
doc atal cymeriadau 10

2. Yn y Atal Teipio deialog, gwirio Atal math mewn cymeriadau arbennig opsiwn. Gweler y screenshot:
doc atal cymeriadau 7

3. Cliciwch Ok, ac mae deialog yn ymddangos i'ch atgoffa y bydd yn dileu Dilysu Data os cymhwyswch y cyfleustodau hwn a chlicio Ydy i fynd i'r ymgom nesaf, bydd yn eich atgoffa bod y cyfleustodau wedi bod yn gweithio yn yr adran. gweler y screenshot:
doc atal cymeriadau 8

4. Cliciwch OK i gau'r ymgom, ac o hyn ymlaen, mae deialog rhybuddio yn ymddangos pan geisiwch nodi cymeriad arbennig yn y dewis.
doc atal cymeriadau 9

Awgrym.Os ydych chi am roi'r gorau i deipio gwerthoedd dyblyg mewn colofn, ceisiwch ddefnyddio'r Kutools ar gyfer Excel's Atal Dyblyg fel y dangosir yn y screenshot canlynol. Mae'n swyddogaeth lawn heb gyfyngiad mewn 30 diwrnod, lawrlwythwch a chael treial am ddim nawr.

doc atal dyblyg mae kutools doc yn atal teipio 2


Erthyglau cysylltiedig:

Sut i atal nodi gwerthoedd gyda lleoedd yn Excel?

Sut i atal cofnodion dyblyg mewn colofn yn Excel?

Offer Cynhyrchiant Swyddfa Gorau

🤖 Kutools AI Aide: Chwyldro dadansoddi data yn seiliedig ar: Cyflawniad Deallus   |  Cynhyrchu Cod  |  Creu Fformiwlâu Personol  |  Dadansoddi Data a Chynhyrchu Siartiau  |  Invoke Swyddogaethau Kutools...
Nodweddion Poblogaidd: Darganfod, Amlygu neu Adnabod Dyblygiadau   |  Dileu Rhesi Gwag   |  Cyfuno Colofnau neu Gelloedd heb Colli Data   |   Rownd heb Fformiwla ...
Super-edrych: VLookup Meini Prawf Lluosog    VLookup Gwerth Lluosog  |   VLookup Ar Draws Taflenni Lluosog   |   Edrych Niwlog ....
Rhestr gwympo Uwch: Creu Rhestr Gollwng yn Gyflym   |  Rhestr Gollwng Dibynnol   |  Rhestr Gollwng Aml-ddewis ....
Rheolwr Colofn: Ychwanegu Nifer Penodol o Golofnau  |  Symud Colofnau  |  Toglo Statws Gwelededd Colofnau Cudd  |  Cymharwch Ystodau a Cholofnau ...
Nodweddion dan Sylw: Ffocws ar y Grid   |  Golwg Dylunio   |   Bar Fformiwla Mawr    Rheolwr Llyfr Gwaith a Thaflen   |  Llyfrgell Adnoddau (Testun Auto)   |  Dewiswr Dyddiad   |  Cyfuno Taflenni Gwaith   |  Amgryptio/Dadgryptio Celloedd    Anfon E-byst trwy Restr   |  Hidlo Super   |   Hidlo Arbennig (hidlo mewn print trwm/italig/strikethrough...) ...
15 Set Offer Gorau12 Testun offer (Ychwanegu Testun, Dileu Cymeriadau,...)   |   50 + Siart Mathau (Siart Gantt,...)   |   40+ Ymarferol Fformiwlâu (Cyfrifwch oedran yn seiliedig ar ben-blwydd,...)   |   19 mewnosod offer (Mewnosod Cod QR, Mewnosod Llun o'r Llwybr,...)   |   12 Trosi offer (Rhifau i Eiriau, Trosi arian cyfred,...)   |   7 Uno a Hollti offer (Rhesi Cyfuno Uwch, Celloedd Hollt,...)   |   ... a mwy

Supercharge Eich Sgiliau Excel gyda Kutools ar gyfer Excel, a Phrofiad Effeithlonrwydd Fel Erioed Erioed. Kutools ar gyfer Excel Yn Cynnig Dros 300 o Nodweddion Uwch i Hybu Cynhyrchiant ac Arbed Amser.  Cliciwch Yma i Gael Y Nodwedd Sydd Ei Angen Y Mwyaf...

Disgrifiad


Mae Office Tab yn dod â rhyngwyneb Tabbed i Office, ac yn Gwneud Eich Gwaith yn Haws o lawer

  • Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
  • Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
  • Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!
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