Vba: วิธีลบอักขระออกจากสตริง
คุณสามารถใช้เมธอด แทนที่() ใน VBA เพื่อลบอักขระออกจากสตริงได้
ตัวอย่างต่อไปนี้แสดงวิธีการใช้วิธีนี้ในทางปฏิบัติกับรายการสตริงต่อไปนี้ใน Excel:
ตัวอย่างที่ 1: ใช้ VBA เพื่อลบอักขระทั้งหมดในสตริงออก (คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
สมมติว่าเราต้องการลบ “this” ออกจากแต่ละสตริง
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
Sub RemoveChar() Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(Range(" A " & i), " this ", "") Next i End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
คอลัมน์ B จะแสดงแต่ละสตริงในคอลัมน์ A โดยลบ “this” แต่ละรายการออก
โปรดทราบว่ามาโครนี้จะ คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
นั่นคือ ทุกสิ่งที่เกิดขึ้นของ “สิ่งนี้” จะถูกลบออกไป แต่ทุกสิ่งที่เกิดขึ้นของ “สิ่งนี้” จะถูกทิ้งไว้ตามลำพัง
ตัวอย่างที่ 2: ใช้ VBA เพื่อลบอักขระทั้งหมดในสตริงออก (ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่)
สมมติว่าเราต้องการลบ “this” (โดยไม่คำนึงถึงกรณี) ออกจากทุกสตริง
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
SubRemoveChar () Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "") Next i End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
คอลัมน์ B จะแสดงแต่ละสตริงในคอลัมน์ A โดยลบ “this” แต่ละรายการออก
โปรดทราบว่าการเปลี่ยนนี้ ไม่คำนึงถึงขนาดตัวพิมพ์
นั่นคือ ทุกเหตุการณ์ของ “สิ่งนี้” (ไม่ว่าจะใช้ตัวพิมพ์ใหญ่หรือไม่ก็ตาม) จะถูกลบออก
เราสามารถบรรลุสิ่งนี้ได้โดยใช้วิธี LCase เพื่อแปลงแต่ละสตริงในคอลัมน์ A เป็นตัวพิมพ์เล็กก่อน ก่อนที่จะค้นหา “this” ในแต่ละสตริง
ตัวอย่างที่ 3: ใช้ VBA เพื่อลบอักขระ N ตัวแรกในสตริง
สมมติว่าเราต้องการลบเฉพาะการเกิดขึ้นครั้งแรกของ “this” (โดยไม่คำนึงถึงกรณี) ออกจากแต่ละสตริง
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
SubRemoveChar () Dim i As Integer For i = 2 To 8 Range(" B " & i) = Replace(LCase(Range(" A " & i)), " this ", "", Count:=1) Next i End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
คอลัมน์ B จะแสดงแต่ละสตริงในคอลัมน์ A โดยลบเฉพาะรายการแรกของ “this” เท่านั้น
โปรดทราบว่าเราใช้ Count:=1 เพื่อลบเฉพาะสตริงที่ระบุครั้งแรก แต่คุณสามารถแทนที่ 1 ด้วยค่าใดก็ได้ที่คุณต้องการลบ แทนที่ n รายการแรกของสตริงที่ระบุ
หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับวิธี การแทนที่ VBA ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ โดยใช้ VBA:
VBA: วิธีนับจำนวนอักขระในสตริง
VBA: วิธีตรวจสอบว่าสตริงมีสตริงอื่นหรือไม่
VBA: วิธีนับเซลล์ด้วยข้อความเฉพาะ