Vba: วิธีแยกสตริงออกเป็นอาร์เรย์ (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อแยกสตริงออกเป็นอาร์เรย์โดยใช้ VBA:

 SubSplitString ()

    Dim SingleValue() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SingleValue = Split(Range(" A " & i), " ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SingleValue(j - 1)
       Next j
       
    Next i
    
End Sub

ตัวอย่างนี้จะแบ่งแต่ละสตริงในช่วง A2:A7 ตามช่องว่างในแต่ละสตริง จากนั้นกำหนดองค์ประกอบผลลัพธ์ของแต่ละสตริงให้กับช่วงเซลล์ B2:B7 และ C2:C7

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

ตัวอย่าง: การใช้ VBA เพื่อแยกสตริงออกเป็นอาร์เรย์

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

สมมติว่าเราต้องการแยกแต่ละสตริงตามช่องว่าง จากนั้นกำหนดองค์ประกอบผลลัพธ์ของแต่ละสตริงให้กับเซลล์ใหม่

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

 SubSplitString ()

    Dim SplitValues() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SplitValues = Split(Range(" A " & i), " ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SplitValues(j - 1)
       Next j
       
    Next i
    
End Sub

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

VBA แยกสตริงออกเป็นอาร์เรย์

โปรดทราบว่าคอลัมน์ B และ C มีชื่อและนามสกุลของแต่ละชื่อเต็มในคอลัมน์ A

โปรดทราบว่าคุณสามารถใช้ฟังก์ชัน แยก VBA เพื่อแยกอาร์เรย์ตามตัวคั่นอื่นได้

ตัวอย่างเช่น สมมติว่าเรามีรายชื่ออีเมลต่อไปนี้:

สมมติว่าเราต้องการแบ่งอีเมลแต่ละฉบับออกเป็นอาร์เรย์ตามตำแหน่งที่สัญลักษณ์ @ ปรากฏ

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

 SubSplitString ()

    Dim SplitValues() As String
    Dim i As Integer
    Dim j As Integer

    For i = 2 To 7
    
    SplitValues = Split(Range(" A " & i), " @ ")
    
       For j = 1 To 2
           Cells(i, j + 1).Value = SplitValues(j - 1)
       Next j
       
    Next i
    
End Sub

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

ฟังก์ชัน แยก จะแยกอีเมลแต่ละฉบับในคอลัมน์ A ตามสัญลักษณ์ @ และแสดงรายการผลลัพธ์ในคอลัมน์ B และ C

หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มสำหรับฟังก์ชัน VBA Split ได้ที่นี่

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

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

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

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

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