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

จะป้องกันไม่ให้อักขระพิเศษเข้ามาใน Excel ได้อย่างไร?

ในบางกรณีเราแค่ต้องการป้อนตัวอักษรหรือตัวเลขในเซลล์และป้องกันไม่ให้พิมพ์อักขระพิเศษเช่น @ # $% & และอื่น ๆ มีฟังก์ชันใดบ้างใน Excel ที่ป้องกันไม่ให้อักขระพิเศษเข้ามาเมื่อเราแทรกค่า?

ป้องกันไม่ให้มีการป้อนอักขระพิเศษด้วยการตรวจสอบข้อมูล

ป้องกันไม่ให้อักขระพิเศษป้อนด้วยรหัส VBA

ป้องกันไม่ให้อักขระพิเศษเข้ามาด้วย Kutools for Excel ความคิดที่ดี 3


ป้องกันไม่ให้มีการป้อนอักขระพิเศษด้วยการตรวจสอบข้อมูล

การตรวจสอบข้อมูลของ Excel สามารถช่วยให้คุณป้อนเฉพาะค่าตัวอักษรและตัวเลขเท่านั้น กรุณาดำเนินการดังต่อไปนี้:

1. เลือกช่วงที่คุณต้องการป้องกันไม่ให้อักขระพิเศษเข้ามา

2. จากนั้นคลิก ข้อมูล > การตรวจสอบข้อมูล > การตรวจสอบข้อมูลดูภาพหน้าจอ:

doc- ป้องกันอักขระ -1

3. ใน การตรวจสอบข้อมูล คลิกตกลง การตั้งค่า และเลือก ประเพณี จาก อนุญาต รายการแบบเลื่อนลงจากนั้นป้อนสูตรนี้ =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) เข้าไปใน สูตร กล่องข้อความดูภาพหน้าจอ:

หมายเหตุA1 ระบุเซลล์แรกของช่วงที่คุณเลือก (จากซ้ายไปขวา)

doc- ป้องกันอักขระ -1

4. จากนั้นคลิก OK เพื่อปิดกล่องโต้ตอบนี้และตอนนี้เมื่อคุณป้อนค่าที่มีอักขระพิเศษในคอลัมน์ที่ระบุคุณได้ใช้ตัวเลือกนี้คุณจะได้รับข้อความเตือนต่อไปนี้

doc- ป้องกันอักขระ -1


ป้องกันไม่ให้อักขระพิเศษป้อนด้วยรหัส VBA

รหัส VBA ต่อไปนี้ยังช่วยคุณป้องกันอักขระพิเศษขณะป้อนค่าข้อความ

1. กด ALT + F11 และจะเปิดไฟล์ หน้าต่าง Microsoft Visual Basic for Applications.

2. จากนั้นเลือกแผ่นงานที่คุณใช้จากด้านซ้าย นักสำรวจโครงการดับเบิลคลิกเพื่อเปิดไฟล์ โมดูลจากนั้นคัดลอกและวางโค้ด VBA ต่อไปนี้ลงในช่องว่าง โมดูล:

รหัส VBA: ป้องกันไม่ให้มีการป้อนอักขระพิเศษใน 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- ป้องกันอักขระ -1

หมายเหตุ: ในโค้ดด้านบนคุณสามารถเปลี่ยนช่วงได้ A1: A100 of Private Const FCheckRgAddress เป็น String = "A1: A100" สคริปต์ไปยังช่วงของคุณเองที่คุณต้องการป้องกันอักขระพิเศษ

3. จากนั้นบันทึกและปิดรหัสนี้และตอนนี้เมื่อคุณป้อนค่าข้อความด้วยอักขระพิเศษบางตัวในช่วง A1: A100 ค่าของคุณจะถูกล้างพร้อมกันและคุณจะได้รับข้อความเตือนต่อไปนี้

doc- ป้องกันอักขระ -1


ป้องกันไม่ให้อักขระพิเศษเข้ามาด้วย Kutools for Excel

จริงๆแล้วถ้าคุณมี Kutools สำหรับ Excel - เครื่องมือที่มีประโยชน์และใช้งานได้หลากหลายคุณสามารถป้องกันการพิมพ์อักขระพิเศษได้อย่างรวดเร็วด้วยการเลือก ป้องกันการพิมพ์ ยูทิลิตี้โดยการตรวจสอบเพียงครั้งเดียว

Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชั่นที่มีประโยชน์ทำให้งานของคุณง่ายขึ้น 

หลังจากการติดตั้ง Kutools สำหรับ Excel โปรดทำดังนี้ :(ดาวน์โหลด Kutools for Excel ได้ฟรีทันที!)

1. เลือกตัวเลือกที่คุณต้องการป้องกันไม่ให้พิมพ์อักขระพิเศษแล้วคลิก Kutools > ป้องกันการพิมพ์ > ป้องกันการพิมพ์. ดูภาพหน้าจอ:
doc ป้องกันอักขระ 10

2 ใน ป้องกันการพิมพ์ โต้ตอบตรวจสอบ ป้องกันไม่ให้พิมพ์อักขระพิเศษ ตัวเลือก ดูภาพหน้าจอ:
doc ป้องกันอักขระ 7

3 คลิก Okและกล่องโต้ตอบจะปรากฏขึ้นเพื่อเตือนคุณว่าจะลบการตรวจสอบข้อมูลหากใช้ยูทิลิตี้นี้แล้วคลิก ใช่ เพื่อไปที่กล่องโต้ตอบถัดไปมันจะเตือนคุณว่ายูทิลิตี้ได้ทำงานในส่วนนี้แล้ว ดูภาพหน้าจอ:
doc ป้องกันอักขระ 8

4 คลิก OK เพื่อปิดกล่องโต้ตอบและจากนี้ไปกล่องโต้ตอบคำเตือนจะปรากฏขึ้นเมื่อคุณพยายามป้อนอักขระพิเศษในส่วนที่เลือก
doc ป้องกันอักขระ 9

เคล็ดลับถ้าคุณต้องการหยุดพิมพ์ค่าที่ซ้ำกันในคอลัมน์โปรดลองใช้ Kutools for Excel's ป้องกันการทำซ้ำ ดังที่แสดงในภาพหน้าจอต่อไปนี้ ฟังก์ชั่นเต็มรูปแบบโดยไม่มีข้อ จำกัด ใน 30 วัน โปรดดาวน์โหลดและทดลองใช้ฟรีทันที

doc ป้องกันการทำซ้ำ doc kutools ป้องกันการพิมพ์ 2


บทความที่เกี่ยวข้อง:

วิธีป้องกันการป้อนค่าด้วยช่องว่างใน Excel

วิธีป้องกันไม่ให้รายการซ้ำกันในคอลัมน์ใน Excel


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel แก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office/Excel 2007-2021 และ 365 รองรับทุกภาษา ง่ายต่อการปรับใช้ในองค์กรหรือองค์กรของคุณ คุณสมบัติเต็มรูปแบบ ทดลองใช้ฟรี 30 วัน รับประกันคืนเงินภายใน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (12)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โซลูชันที่มี Data Validation เกือบจะสมบูรณ์แบบ แต่ฉันสามารถใส่อักขระ "*" ลงในฟิลด์ที่มีการป้องกันได้ คำแนะนำใด ๆ? ขอบคุณมาก Pavel
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
แทนที่จะใช้ฟังก์ชัน SEARCH ให้ลองใช้ FIND: =ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
วิธีการตั้งค่าจำกัดความยาว ? ฉันหมายถึงถ้าฉันต้องการตั้งค่าเพียง 12 ตัวอักษรหรือตัวเลข
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีค่ะ คุณราช
เพื่อแก้ปัญหาของคุณ โปรดใช้สูตรด้านล่าง:
=AND(ISNUMBER(SUMPRODUCT(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))),LEN(A1)=12)


โปรดลอง หวังว่าจะช่วยคุณได้!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะเกิดอะไรขึ้นหากฉันต้องการป้องกันไม่ให้พิมพ์อักขระบางตัวพร้อมกับความยาวของข้อความในเซลล์เดียว

ตัวอย่างเช่น ฉันต้องการป้องกันไม่ให้ข้อความอยู่ระหว่าง 5-16 ตัวอักษรร่วมกับการป้องกันอักขระบางตัว? คำแนะนำใด ๆ?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
บางทีคุณอาจลองใช้ฟังก์ชันตรวจสอบข้อมูลเพื่อจำกัดความยาวของข้อความ ดูภาพหน้าจอ:
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมื่อฉันใช้รหัส VBA ของคุณใน excel 2013 มันจะเปิดตัวเลือกการดีบักและค้าง
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี WilY หากมีกล่องโต้ตอบปรากฏขึ้นตามภาพหน้าจอด้านล่าง ให้คลิก ใช่ จากนั้น ตกลง เพื่อเปิดใช้งานโค้ด ปัญหานี้ปรากฏใน Excel 2016 ด้วย
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จะทำซ้ำในคอลัมน์อื่นได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โซลูชั่นที่ยอดเยี่ยม como agregas las comillas (") สำหรับ que ฌอน acceptidas?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี เฮอร์เบอร์

ดีใจที่ได้ช่วยเหลือ คุณสามารถใช้สูตรนี้ในการตรวจสอบข้อมูลด้วยวิธีแรก:
=ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"&CHAR(34))))

ฟังก์ชัน CHAR ใช้ค่า ASCII และส่งกลับค่าอักขระที่เกี่ยวข้อง ค่า ASCII สำหรับอัญประกาศคู่คือ 34 ดังนั้น อัญประกาศคู่จะได้รับอนุญาต ได้โปรดลองดู

ขอแสดงความนับถือ
แมนดี้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
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)
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ

ช่องทางอื่นๆ

ลิขสิทธิ์© 2009 - wwwextendoffice.com | สงวนลิขสิทธิ์. ขับเคลื่อนโดย ExtendOffice. | แผนผังเว็บไซต์
Microsoft และโลโก้ Office เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Microsoft Corporation ในสหรัฐอเมริกาและ / หรือประเทศอื่น ๆ
ได้รับการปกป้องโดย Sectigo SSL