Note: The other languages of the website are Google-translated. Back to English

Hur förhindrar man att specialtecken kommer in i Excel?

I vissa fall vill vi bara ange bokstäver eller siffror i celler och förhindra att specialtecken skrivs, som @ # $% & så vidare. Finns det några funktioner i Excel för att förhindra att specialtecken matas in när vi sätter in värden?

Förhindra att specialtecken kommer in med datavalidering

Förhindra att specialtecken kommer in med VBA-kod

Förhindra att specialtecken kommer in med Kutools för Excel bra idé3


Förhindra att specialtecken kommer in med datavalidering

Excel 'Data Validation kan hjälpa dig att bara ange de alfanumeriska värdena. Gör så här:

1. Välj ett område som du vill förhindra att specialtecken matas in.

2. Klicka sedan Data > Datagransknings > Datagransknings, se skärmdump:

doc-prevent-characters-1

3. I Datagransknings dialogrutan, klicka Inställningar fliken och välj Motorcykel från Tillåt rullgardinsmeny och ange sedan denna formel =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) i Formel textruta, se skärmdump:

Notera:A1 anger den första cellen i det valda intervallet (från vänster till höger).

doc-prevent-characters-1

4. Klicka sedan OK för att stänga den här dialogrutan och nu när du anger värden som innehåller specialtecken i den angivna kolumnen har du tillämpa alternativet får du följande varningsmeddelande.

doc-prevent-characters-1


Förhindra att specialtecken kommer in med VBA-kod

Följande VBA-kod kan också hjälpa dig att förhindra specialtecken när du anger textvärden.

1. Håll ner ALT + F11 knapparna och det öppnar Microsoft Visual Basic for Applications-fönstret.

2. Välj sedan ditt använda kalkylblad från vänster Project Explorerdubbelklicka på den för att öppna Modulernaoch sedan kopiera och klistra in följande VBA-kod i tomt Modulerna:

VBA-kod: förhindra att specialtecken kommer in 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

Anmärkningar: I koden ovan kan du ändra intervallet A1: A100 of Privat Const FCheckRgAddress As String = "A1: A100" skript till ditt eget intervall som du vill förhindra specialtecken.

3. Spara och stäng sedan den här koden, och nu när du anger textvärden med några specialtecken i intervallet A1: A100 kommer ditt värde att rensas omedelbart och du kan få följande varningsmeddelande.

doc-prevent-characters-1


Förhindra att specialtecken kommer in med Kutools för Excel

Egentligen, om du har Kutools för Excel - ett praktiskt och multifunktionellt verktyg, du kan snabbt förhindra att skriva specialtecken i ett urval med dess Förhindra skrivning med en kontroll.

Kutools för Excel, med mer än 300 praktiska funktioner, gör dina jobb enklare. 

När du har installerat Kutools för Excel, gör så här :(Gratis nedladdning Kutools för Excel nu!)

1. Välj ett val som du vill förhindra att specialtecken skriver och klicka på Kutools > Förhindra skrivning > Förhindra skrivning. Se skärmdump:
doc förhindra tecken 10

2. I Förhindra skrivning dialogrutan, kontrollera Förhindra att du skriver in specialtecken alternativ. Se skärmdump:
doc förhindra tecken 7

3. klick Ok, och en dialog dyker upp för att påminna dig om att det tar bort datavalidering om du använder detta verktyg och klickar på Ja för att gå till nästa dialog kommer det att påminna dig om att verktyget har arbetat i avsnittet. se skärmdump:
doc förhindra tecken 8

4. klick OK för att stänga dialogen och från och med nu dyker det upp en varningsdialog när du försöker ange ett specialtecken i valet.
doc förhindra tecken 9

Tips.Om du vill sluta skriva dubbla värden i en kolumn, försök att använda Kutools för Excel Förhindra duplicering som visas i följande skärmdump. Det är full funktion utan begränsning i 30 dagar, vänligen ladda ner och få en gratis provperiod nu.

doc förhindrar duplikat doc kutools förhindrar att skriva 2


Relaterade artiklar:

Hur förhindrar man att ange värden med mellanslag i Excel?

Hur förhindrar man dubbletter i en kolumn i Excel?


De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2021 och 365. Stöder alla språk. Enkel implementering i ditt företag eller organisation. Fullständiga funktioner 30 dagars gratis provperiod. 60 dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (12)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Lösningen med Data Validation är nästan perfekt. Men jag kan sätta "*"-tecken i det skyddade fältet. Några råd? Stort tack Pavel
Denna kommentar minimerades av moderatoren på webbplatsen
Istället för SEARCH-funktionen, försök att använda FIND: =ISNUMBER(SUMPRODUCT(FIND(MID(A1,RAD(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))
Denna kommentar minimerades av moderatoren på webbplatsen
hur ställer man in längdgränsen? jag menar om jag bara vill ställa in 12 tecken eller nummer
Denna kommentar minimerades av moderatoren på webbplatsen
Hej raj,
För att lösa ditt problem, använd följande formel:
=AND(ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))),LEN(A1)=12)


Gör ett försök, hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
Vad händer om jag behöver förhindra att i en enda cell skriva vissa tecken i kombination med textens längd?

Till exempel vill jag förhindra att texten är mellan 5-16 tecken i kombination med vissa teckenförhindrande? Några råd?
Denna kommentar minimerades av moderatoren på webbplatsen
Kanske kan du prova funktionen Datavalidering för att begränsa textlängden. Se skärmdump:
Denna kommentar minimerades av moderatoren på webbplatsen
När jag använder din VBA-kod i excel 2013 öppnar den felsökningsalternativet och fryser
Denna kommentar minimerades av moderatoren på webbplatsen
Hej, WilY, om det dyker upp en dialogruta enligt skärmbilden nedan, klicka bara på Ja och sedan OK för att aktivera koden. Det här problemet visas också i Excel 2016.
Denna kommentar minimerades av moderatoren på webbplatsen
Hur upprepar man detta i andra kolumner?
Denna kommentar minimerades av moderatoren på webbplatsen
Utmärkt lösning. como agregas las comillas (") för sean admitidas?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej herber,

Glad att hjälpa till. Med den första metoden kan du använda denna formel i datavalidering:
=ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"&CHAR(34))))

CHAR-funktionen tar ASCII-värdet och returnerar motsvarande teckenvärde. ASCII-värdet för en dubbel citattecken är 34. Så en dubbel citattecken kommer att tillåtas. Gör ett försök.

Vänliga hälsningar,
Mandy
Denna kommentar minimerades av moderatoren på webbplatsen
Pessoal, segue formel 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)
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser

Följ oss

Copyright © 2009 - www.extendoffice.com. | Alla rättigheter förbehållna. Drivs av ExtendOffice. | | Sitemap
Microsoft och Office-logotypen är varumärken eller registrerade varumärken som tillhör Microsoft Corporation i USA och / eller andra länder.
Skyddad av Sectigo SSL