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
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:

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