ไปยังเนื้อหาหลัก

วิธีการลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรใน Excel

สมมติว่ามีข้อมูลหลายช่วงเช่น JAMES0898 # 4% ^ {}ซึ่งมีอักขระที่ไม่ใช่ตัวเลขและตัวอักษรในแผ่นงานและตอนนี้คุณเพียงต้องการลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรและเก็บอักขระที่เป็นตัวอักษรและตัวเลข ตัวอย่างเช่น, JAMES0898 # 4% ^ {} > JAMES0898. คุณลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรใน Excel อย่างรวดเร็วได้อย่างไร?


ลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรด้วยรหัส VBA

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

1 กด อื่น ๆ + F11 คีย์ร่วมกันเพื่อเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2 คลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นวางโค้ด VBA ด้านล่างลงในโมดูล:

VBA: ลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมด

Sub RemoveNotAlphasNotNum()
'Updateby2014128
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[a-z.]" Or xTemp Like "[A-Z.]" Or xTemp Like "[0-9.]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

3. กด F5 หรือคลิกปุ่ม วิ่ง ปุ่มเพื่อรันโค้ด

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

ตอนนี้อักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมดถูกลบออกจากช่วงที่เลือกแล้ว ดูภาพหน้าจอ:

2 คลิกเพื่อลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมดด้วยเครื่องมือที่น่าทึ่ง

เรามักจะวางเคอร์เซอร์ไว้ในเซลล์แล้วลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรทีละตัวด้วยตนเอง หากคุณคุ้นเคยกับ VBA หรือฟังก์ชันที่กำหนดโดยผู้ใช้คุณสามารถเขียนโค้ดและลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมดออกจำนวนมากได้ แต่ที่นี่ฉันจะแนะนำเครื่องมือที่น่าทึ่งฟีเจอร์ Remove Characters ของ Kutools for Excel ซึ่งสามารถลบอักขระทุกชนิดได้ด้วยการคลิกเพียง 2 ครั้งเท่านั้น!


ลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรด้วย User Defined Function

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

1. กด อื่น ๆ + F11 คีย์ร่วมกันเพื่อเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นวางโค้ดด้านล่างลงในโมดูล:

User Defined Function: ลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมด

Function DeleteNonAlphaNumeric(xStr As String) As String
Dim xStrR As String
Dim xCh As String

Dim xStrMode As String
Dim xInt As Integer
    xStrMode = "[A-Z.a-z 0-9]"
    xStrR = ""
    For xInt = 1 To Len(xStr)
        xCh = Mid(xStr, xInt, 1)
        If xCh Like xStrMode Then
            xStrR = xStrR & xCh
        End If
    Next
    DeleteNonAlphaNumeric = xStrR
End Function
    

3. ตอนนี้กลับไปที่แผ่นงานเลือกเซลล์ว่างแล้วป้อนสูตร = DeleteNonAlphaNumeric (B3)แล้วลากตัวจัดการการป้อนอัตโนมัติเพื่อใช้สูตรนี้กับเซลล์อื่น


ลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรด้วย Kutools for Excel

ด้วยสองวิธีข้างต้นคุณจำเป็นต้องรู้รหัส แต่ในฐานะผู้เริ่มต้นใช้งาน Excel พวกเราส่วนใหญ่ไม่สามารถใช้รหัสได้ดังนั้นที่นี่ฉันจะให้วิธีง่ายๆในการทำ

Kutools สำหรับ Excel- รวมเครื่องมือที่มีประโยชน์มากกว่า 300 รายการสำหรับ Excel ทดลองใช้ฟรี 30 วันเต็มไม่ต้องใช้บัตรเครดิต! Get It Now

หากคุณได้ติดตั้ง Kutools for Excel โปรดทำตามขั้นตอนต่อไปนี้:

1. เลือกช่วงที่คุณต้องการลบอักขระที่ไม่ใช่ตัวเลขและตัวอักษรแล้วคลิก Kutools > ข้อความ > ลบอักขระ.

2. จากนั้นก ลบอักขระ กล่องโต้ตอบจะปรากฏขึ้นให้ตรวจสอบเท่านั้น ไม่ใช่ตัวเลขและตัวอักษร ตัวเลือกและคลิกที่ Ok ปุ่ม

ตอนนี้อักขระที่ไม่ใช่ตัวเลขและตัวอักษรทั้งหมดถูกลบออกจากสตริงข้อความแล้ว


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

สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

🤖 Kutools AI ผู้ช่วย: ปฏิวัติการวิเคราะห์ข้อมูลโดยยึดตาม: การดำเนินการที่ชาญฉลาด   |  สร้างรหัส  |  สร้างสูตรที่กำหนดเอง  |  วิเคราะห์ข้อมูลและสร้างแผนภูมิ  |  เรียกใช้ฟังก์ชัน Kutools...
คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

รายละเอียด


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

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How do you remove the characters while keeping the space separator?
This comment was minimized by the moderator on the site
VBA method worked, but only works on the selected range. You cannot specify the output into a different range of cells than the input. So you must copy the source data into the target range, select the data, run the script and allow it to output to the default range. Also, the period (.) is not considered a special character, so if you want to remove those too, you'll need to search and replace.
This comment was minimized by the moderator on the site
Thanks for sharing, but still don't like the input-box method... :D
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations