Note: The other languages of the website are Google-translated. Back to English
Log på  \/ 
x
or
x
Tilmeld  \/ 
x

or

Hvordan forhindrer jeg specialtegn i Excel?

I nogle tilfælde vil vi bare indtaste bogstaver eller tal i celler og forhindre at indtaste specialtegnene, f.eks. @ # $% Og så videre. Er der nogen funktioner i Excel for at forhindre, at specialtegnene kommer ind, når vi indsætter værdier?

Undgå, at specialtegn kommer ind med datavalidering

Undgå, at specialtegn indtastes med VBA-kode

Undgå, at specialtegn kommer ind med Kutools til Excel god idé3


Undgå, at specialtegn kommer ind med datavalidering

Excel 'datavalidering kan hjælpe dig med kun at indtaste de alfanumeriske værdier. Gør følgende:

1. Vælg et område, som du vil forhindre, at specialtegnene indtastes.

2. Klik derefter på data > Datavalidering > Datavalidering, se skærmbillede:

doc-prevent-characters-1

3. I Datavalidering dialogboksen, klik Indstillinger fanebladet, og vælg Tilpasset fra Tillad rulleliste, og indtast derefter denne formel =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) ind i Formula tekstboks, se skærmbillede:

Bemærk:A1 angiver den første celle i dit valgte interval (fra venstre til højre).

doc-prevent-characters-1

4. Klik derefter på OK for at lukke denne dialog, og når du nu indtaster værdier, der indeholder specialtegnene i den angivne kolonne, har du anvendt indstillingen, får du følgende advarselsmeddelelse.

doc-prevent-characters-1


Undgå, at specialtegn indtastes med VBA-kode

Den følgende VBA-kode kan også hjælpe dig med at forhindre specialtegn, mens du indtaster tekstværdierne.

1. Hold nede ALT + F11 tasterne, og det åbner Vinduet Microsoft Visual Basic til applikationer.

2. Vælg derefter dit brugte regneark fra venstre Projekt Explorer, dobbeltklik på den for at åbne Moduler, og kopier og indsæt derefter følgende VBA-kode i det tomme felt Moduler:

VBA-kode: forhindrer specialtegn 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-prevent-characters-1

Bemærk: I ovenstående kode kan du ændre rækkevidden A1: A100 of Privat Const FCheckRgAddress As String = "A1: A100" script til dit eget interval, som du vil forhindre specialtegnene.

3. Gem og luk derefter denne kode, og når du indtaster tekstværdier med nogle specialtegn i området A1: A100, ryddes din værdi med det samme, og du kan få følgende advarselsmeddelelse.

doc-prevent-characters-1


Undgå, at specialtegn kommer ind med Kutools til Excel

Faktisk, hvis du har Kutools til Excel - et praktisk og multifunktionelt værktøj, du kan hurtigt forhindre at skrive specialtegn i et valg med dets Forhindre indtastning hjælpeprogram med en kontrol.

Kutools til Excel, med mere end 300 praktiske funktioner, der gør dine job lettere. 

Efter installation Kutools til Excel, gør venligst som nedenfor :(Gratis download Kutools til Excel nu!)

1. Vælg et valg, du vil forhindre, at specialtegn skriver, og klik på Kutools > Forhindre indtastning > Forhindre indtastning. Se skærmbillede:
doc forhindrer tegn 10

2. i Forhindre indtastning dialog, tjek Undgå at indtaste specialtegn mulighed. Se skærmbillede:
doc forhindrer tegn 7

3. klik Ok, og der vises en dialogboks for at minde dig om, at det vil fjerne datavalidering, hvis du anvender dette værktøj, og klik på Ja for at gå til næste dialog, vil det minde dig om, at værktøjet har arbejdet i sektionen. se skærmbillede:
doc forhindrer tegn 8

4. klik OK for at lukke dialogen, og fra nu af vises en advarselsdialog, når du prøver at indtaste et specialtegn i markeringen.
doc forhindrer tegn 9

Tip.Hvis du vil stoppe med at skrive duplikatværdier i en kolonne, så prøv at bruge Kutools til Excel Undgå duplikat som vist i det følgende skærmbillede. Det er fuld funktion uden begrænsning på 30 dage, download venligst og få en gratis prøveperiode nu.

doc forhindrer duplikat doc kutools forhindrer indtastning 2


Relaterede artikler:

Hvordan forhindres indtastning af værdier med mellemrum i Excel?

Hvordan undgår man duplikater i en kolonne i Excel?


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2019 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60-dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50%og reducerer hundredvis af museklik for dig hver dag!
officetab bund
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    WilExcel · 2 years ago
    When I use your VBA code in excel 2013 it will open up debug option and freezes
    • To post as a guest, your comment is unpublished.
      Sunny · 2 years ago
      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.
  • To post as a guest, your comment is unpublished.
    Milan · 3 years ago
    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?
    • To post as a guest, your comment is unpublished.
      Sunny · 3 years ago
      Maybe you can try the Data Validation function to limit the text length. See screenshot:
  • To post as a guest, your comment is unpublished.
    Pavel · 5 years ago
    The solution with Data Validation is almost perfect. But I'm able to put "*" character the such protected field. Any advice?
    Many thanks
    Pavel
    • To post as a guest, your comment is unpublished.
      unknown · 3 years ago
      Instead of SEARCH function try using FIND: =ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))