Vba: วิธีลบอักขระพิเศษออกจากสตริง


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน VBA เพื่อลบอักขระพิเศษออกจากสตริง:

 Sub ReplaceSpecialChars()
Dim i As Integer
    
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub

ตัวอย่างนี้จะแทนที่อักขระพิเศษต่อไปนี้ในแต่ละสตริงในช่วงเซลล์ A2:A8 และสร้างสตริงใหม่ในเซลล์ B2:B8 :

  • !
  • @
  • #

โปรดทราบว่าเราใช้วิธี แทนที่ ที่ซ้อนกันสามวิธีเพื่อลบอักขระพิเศษเหล่านี้ออกจากสตริง

หากต้องการลบอักขระพิเศษเพิ่มเติม เพียงใช้วิธีการ แทนที่ ที่ซ้อนกันมากขึ้น

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: ลบอักขระพิเศษออกจากสตริงโดยใช้ VBA

สมมติว่าเรามีรายการสตริงต่อไปนี้ใน Excel:

สมมติว่าเราต้องการลบอักขระพิเศษต่อไปนี้ออกจากแต่ละสตริง:

  • !
  • @
  • #

เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:

 Sub ReplaceSpecialChars()
Dim i As Integer
    
For i = 2 To 8
Range("B" & i) = Replace(Replace(Replace(Range("A" & i), "!", ""), "@", ""), "#", "")
Next i
End Sub

เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:

VBA ลบอักขระพิเศษออกจากสตริง

คอลัมน์ B จะแสดงแต่ละสตริงในคอลัมน์ A โดยลบอักขระพิเศษออก

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับวิธี การแทนที่ VBA ได้ที่นี่

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ โดยใช้ VBA:

VBA: วิธีนับจำนวนอักขระในสตริง
VBA: วิธีตรวจสอบว่าสตริงมีสตริงอื่นหรือไม่
VBA: วิธีนับเซลล์ด้วยข้อความเฉพาะ

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *