วิธีแยกสตริงเป็นอาร์เรย์ใน VBA (3 วิธี)

  • แบ่งปันสิ่งนี้
Hugh West

ในบทความนี้ ฉันจะแสดงวิธีแยกสตริงเป็นอาร์เรย์ใน VBA แยก เป็นหนึ่งในฟังก์ชันที่สำคัญและใช้กันอย่างแพร่หลายที่เราใช้ใน VBA คุณจะได้เรียนรู้การแยกสตริงใน VBA ในทุกรูปแบบที่เป็นไปได้

VBA Split Function (Quick View)

=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])

ดาวน์โหลดสมุดงานแบบฝึกหัด

แยกสตริงเป็น Array.xlsm

3 วิธีแยกสตริงเป็นอาร์เรย์ใน VBA

มามีสตริงในมือกันเถอะ “เรายื่นขอวีซ่าของสหรัฐอเมริกา แคนาดา ออสเตรเลีย และฝรั่งเศส ” .

ฉันจะแสดงให้คุณเห็นว่าคุณสามารถแยกสตริงนี้เป็นอาร์เรย์ได้อย่างไรในทุกประเภทที่เป็นไปได้โดยใช้ ฟังก์ชันแยก ของ VBA .

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

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

สามารถเป็น ช่องว่าง (“ “) , ลูกน้ำ (“,”) , เครื่องหมายอัฒภาค (“:”) , อักขระตัวเดียว, สตริงอักขระหรืออะไรก็ได้

ตัวอย่างที่ 1:

มาแยกสตริงโดยใช้ ลูกน้ำ เป็น ตัวคั่น

บรรทัดของโค้ดจะเป็น:

Arr = Split(Text, ",")

โค้ด VBA ที่สมบูรณ์จะเป็น:

รหัส VBA:

6078

เอาต์พุต:

มันจะแยกสตริงออกเป็นอาร์เรย์ที่ประกอบด้วย {“เรายื่นขอวีซ่าของสหรัฐอเมริกา”, “แคนาดา”, “ออสเตรเลีย”, “ฝรั่งเศส”}.

ตัวอย่างที่ 2:

คุณยังสามารถใช้ ช่องว่าง (“ ”) เป็นตัวคั่น

บรรทัดของโค้ดจะเป็น:

Arr = Split(Text, " ")

รหัส VBA ที่สมบูรณ์จะเป็น:

รหัส VBA:

2093

เอาท์พุต:

มันจะแยกสตริงออกเป็นอาร์เรย์ที่ประกอบด้วย {“เรา”, “สมัคร”, “สำหรับ”, “the”, “visa”, “of”, “U.S,”, “Canada,” “Australia,”, “France,”}

สิ่งที่ควรจำ:

  • ตัวคั่นเริ่มต้นคือ ช่องว่าง (“ ”)
  • นั่นคือ หากคุณไม่ใส่ตัวคั่นใดๆ ก็จะใช้ ช่องว่าง เป็นตัวคั่น

อ่านเพิ่มเติม: แยกสตริงตามอักขระใน Excel (6 วิธีที่เหมาะสม)

การอ่านที่คล้ายกัน:

  • แยกข้อความออกเป็นหลายข้อความ เซลล์ใน Excel
  • VBA เพื่อรับค่าที่ไม่ซ้ำจากคอลัมน์ไปยังอาร์เรย์ใน Excel (3 เกณฑ์)
  • Excel VBA: วิธีกรองด้วยหลายรายการ เกณฑ์ในอาร์เรย์ (7 วิธี)

2. แยกสตริงออกเป็นอาร์เรย์ด้วยจำนวนรายการเท่าใดก็ได้

คุณสามารถแบ่งสตริงเป็นอาร์เรย์ด้วยจำนวนรายการเท่าใดก็ได้ตามต้องการ

ใส่จำนวนรายการเป็น อาร์กิวเมนต์ ที่ 3 ของ แยกฟังก์ชัน .

ตัวอย่าง:

มาแยก ลงใน 3 รายการแรกที่มี ช่องว่าง เป็นตัวคั่น

บรรทัดของโค้ดจะเป็น:

Arr = Split(Text, " ", 3)

และ โค้ด VBA จะเป็น:

รหัส VBA:

2620

เอาต์พุต:

มันจะแยกสตริงออกเป็น อาร์เรย์ประกอบด้วย 3 รายการแรกคั่นด้วยตัวคั่น ช่องว่าง .

สิ่งที่ต้องจำ:

  • อาร์กิวเมนต์เริ่มต้นคือ -1 .
  • นั่นหมายความว่า หากคุณไม่ป้อนอาร์กิวเมนต์ อาร์กิวเมนต์จะแยก สตริงเป็นจำนวนครั้งสูงสุดที่เป็นไปได้

อ่านเพิ่มเติม: วิธีแยกสตริงตามความยาวใน Excel (8 วิธี)

3. ใช้ทั้งตัวคั่นที่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เพื่อแยกสตริงอาร์เรย์ใน VBA

ฟังก์ชัน แยก ให้คุณใช้ทั้ง ตัวพิมพ์เล็กและใหญ่ และ ตัวคั่น ตัวคั่น

สำหรับตัวคั่น ตัวพิมพ์เล็ก ให้ใส่อาร์กิวเมนต์ ที่ 4 เป็น 1

และสำหรับตัวคั่น ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ ให้ใส่อาร์กิวเมนต์ ที่ 4 เป็น 0 .

ตัวอย่างที่ 1: ตัวคั่นที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่

ในสตริงที่กำหนด ให้พิจารณาข้อความ “FOR” เป็นตัวคั่น และ 2 เป็น จำนวนรายการทั้งหมดของอาร์เรย์

ตอนนี้ สำหรับกรณี ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ บรรทัดของโค้ดจะเป็น:

Arr = Split(Text, "FOR ", 3,1)

และ โค้ด VBA ที่สมบูรณ์จะเป็น:

รหัส VBA:

3666

เอาต์พุต:

เนื่องจากตัวคั่น ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ ที่นี่ “FOR ” จะทำงานเป็น “for” และจะแบ่งสตริงออกเป็นอาร์เรย์ของสองรายการ

ตัวอย่างที่ 2: ตัวคั่นที่คำนึงถึงตัวพิมพ์เล็กและใหญ่

อีกครั้ง สำหรับตัวพิมพ์เล็ก ตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ บรรทัดของโค้ดจะเป็น:

Arr = Split(Text, "FOR ", 3,0)

และ โค้ด VBA ที่สมบูรณ์จะเป็น:

รหัส VBA:

3073

เอาต์พุต:

เนื่องจากตัวคั่นเป็น คำนึงถึงตัวพิมพ์เล็กและใหญ่ ที่นี่ “ FOR” จะไม่เป็น “for” และจะไม่แยกสตริงออกเป็นอาร์เรย์ของสองรายการ

อ่านเพิ่มเติม: Excel VBA: ลบรายการที่ซ้ำออกจากอาร์เรย์ (2 ตัวอย่าง)

สิ่งที่ต้องจำ:

  • ค่าเริ่มต้นของอาร์กิวเมนต์คือ 0 .
  • นั่นคือ ถ้าคุณไม่ใส่ค่าของอาร์กิวเมนต์ 4th มันจะทำงานสำหรับการจับคู่ ตรงตามตัวพิมพ์เล็กและใหญ่

บทสรุป

ดังนั้น เมื่อใช้วิธีการเหล่านี้ คุณสามารถใช้ แยกฟังก์ชัน ของ VBA เพื่อแยกสตริงออกเป็นอาร์เรย์ของรายการ คุณมีคำถามใดๆ? อย่าลังเลที่จะถามเรา

Hugh West เป็นผู้ฝึกอบรมและนักวิเคราะห์ Excel ที่มีประสบการณ์สูงและมีประสบการณ์มากกว่า 10 ปีในอุตสาหกรรมนี้ เขาสำเร็จการศึกษาระดับปริญญาตรีสาขาการบัญชีและการเงิน และปริญญาโทสาขาบริหารธุรกิจ Hugh มีความหลงใหลในการสอนและได้พัฒนาแนวทางการสอนที่เป็นเอกลักษณ์ซึ่งง่ายต่อการติดตามและเข้าใจ ความรู้ความเชี่ยวชาญของเขาเกี่ยวกับ Excel ช่วยให้นักเรียนและผู้เชี่ยวชาญหลายพันคนทั่วโลกพัฒนาทักษะและความเป็นเลิศในอาชีพการงาน ฮิวจ์แบ่งปันความรู้ของเขากับคนทั้งโลกผ่านบล็อก โดยเสนอบทช่วยสอน Excel ฟรีและการฝึกอบรมออนไลน์เพื่อช่วยให้บุคคลและธุรกิจบรรลุศักยภาพสูงสุดของตนเอง