TEXTSPLIT เป็นฟังก์ชัน Dynamic Array ที่ช่วยแยกข้อความในเซลล์ออกเป็นอาร์เรย์ของค่า (Spill) ตามตัวคั่นที่ระบุ สามารถแยกข้อมูลออกไปทางขวา (คอลัมน์) หรือลงด้านล่าง (แถว) หรือทั้งสองอย่างพร้อมกัน เหมาะสำหรับการจัดการข้อมูลนำเข้าที่รวมกันอยู่ในเซลล์เดียว
| อาร์กิวเมนต์ | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| text | Text | ข้อความที่ต้องการแยก | |
| col_delimiter | Text | ตัวคั่นสำหรับแยกเป็นคอลัมน์ (ถ้าจะแยกเฉพาะแถว ให้เว้นว่างไว้) | |
| [row_delimiter]ไม่บังคับ | Text | none | ตัวคั่นสำหรับแยกเป็นแถว |
| [ignore_empty]ไม่บังคับ | Logical | FALSE | TRUE = ละเว้นเซลล์ว่าง (กรณีมีตัวคั่นติดกัน), FALSE = สร้างเซลล์ว่าง |
| [match_mode]ไม่บังคับ | Number | 0 | 0 = ตรงตัวพิมพ์เล็ก-ใหญ่ (Case-sensitive), 1 = ไม่สนใจตัวพิมพ์ |
| [pad_with]ไม่บังคับ | Any | #N/A | ค่าที่จะเติมให้เต็มถ้าอาร์เรย์ไม่เท่ากัน (กรณีแยก 2 มิติ) |
[ ] = อาร์กิวเมนต์ที่ไม่บังคับ
ฟังก์ชัน TEXTSPLIT ใช้สำหรับแยกข้อความ (Split Text) ออกเป็นหลายเซลล์โดยอัตโนมัติ สามารถกำหนดตัวคั่น (Delimiter) ได้ทั้งแนวคอลัมน์และแนวแถว รองรับการแยกด้วยตัวคั่นหลายตัวพร้อมกัน และสามารถละเว้นเซลล์ว่างได้ เป็นฟังก์ชันที่มาแทนที่ Text to Columns แบบเดิมๆ
แยกชื่อและนามสกุลที่คั่นด้วยช่องว่างออกจากกันเป็นคนละคอลัมน์
แยกรายการสินค้าที่คั่นด้วยคอมม่า (,) ให้อยู่คนละเซลล์
แปลงข้อความเช่น "Name:John; Age:30" ให้เป็นตาราง 2 คอลัมน์ (Key, Value)
แยกข้อความ "สมชาย ใจดี" โดยใช้ช่องว่างเป็นตัวคั่น จะได้ "สมชาย" ในเซลล์แรก และ "ใจดี" ในเซลล์ถัดไป
ใช้ Array Constant {…} เพื่อระบุตัวคั่นหลายตัว (คอมม่า, เซมิโคลอน, จุด) ในสูตรเดียว
เว้น col_delimiter ไว้ แล้วใส่ "," ใน row_delimiter แทน เพื่อให้ผลลัพธ์เรียงลงด้านล่าง
มีคอมม่าติดกัน 2 ตัว (,,) ปกติจะเกิดเซลล์ว่าง แต่กำหนด ignore_empty=TRUE จึงข้ามไป
เมื่อแยกทั้งแนวคอลัมน์และแถวพร้อมกัน แต่ละบรรทัดมีจำนวนค่าไม่เท่ากัน ปกติ Excel จะเติม #N/A ในช่องที่ขาด แต่กำหนด pad_with="" ให้เติมสตริงว่างแทน จะได้ตารางที่ดูสะอาดกว่า
TEXTSPLIT เป็นสูตรที่อัปเดตอัตโนมัติเมื่อข้อมูลต้นทางเปลี่ยน (Dynamic) ส่วน Text to Columns เป็นเครื่องมือที่ทำครั้งเดียวจบ (Static) และทับข้อมูลเดิม
ไม่ได้ ฟังก์ชันนี้มีเฉพาะใน Excel 365, Excel 2021 และ Excel for the web เท่านั้น
เกิดเมื่อแยกทั้งคอลัมน์และแถวพร้อมกัน (2 มิติ) แล้วแต่ละบรรทัดมีจำนวนชิ้นไม่เท่ากัน Excel ต้องเติมช่องที่ขาดเพื่อให้เป็นตารางสี่เหลี่ยม และค่าเริ่มต้นที่ใช้เติมคือ #N/A ถ้าไม่อยากเห็น ให้กำหนด pad_with เป็นค่าอื่น เช่น "" หรือ 0
ส่วนใหญ่เกิดจากปล่อยช่อง text ว่างไว้ หรือไม่ได้ระบุตัวคั่นเลยทั้ง col_delimiter และ row_delimiter (ต้องมีอย่างน้อยหนึ่งตัว) อีกสาเหตุที่พบบ่อยคือพิมพ์เครื่องหมายคำพูดโค้ง (" ") จาก Word แทนที่จะเป็นคำพูดตรง (") ทำให้ Excel อ่านสูตรไม่ออก
ควบคุมว่าตัวคั่นต้องตรงตัวพิมพ์เล็ก-ใหญ่หรือไม่ เช่น =TEXTSPLIT("AxBxC","x",,,0) จะแยกตรง x ตัวเล็กเท่านั้น แต่ถ้าข้อความมี X ตัวใหญ่ปนอยู่ด้วยและต้องการแยกทั้งคู่ ให้ตั้ง match_mode=1
ฟังก์ชันที่ผู้เขียนโยงไว้กับ TEXTSPLIT จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
ฟังก์ชันที่แปลงอาร์เรย์หรือช่วงเซลล์ให้เป็นข้อความเดียว โดยสามารถเลือกรูปแบบการแสดงผล (อ่านง่ายหรือ Strict Format)
ฟังก์ชัน Microsoft 365 ที่ตรวจจับภาษาของข้อความในเซลล์ แล้วคืนค่าเป็นรหัสภาษา (เช่น "th", "en", "es") ใช้คู่กับ TRANSLATE เพื่อแปลภาษาแบบอัตโนมัติ
FIND ค้นหาตำแหน่งเริ่มต้นของคำที่ต้องการภายในข้อความหลัก โดยสนใจตัวพิมพ์เล็ก-ใหญ่ (เช่น "A" ไม่เหมือนกับ "a") ถ้าค้นหาไม่เจอจะคืนค่า Error #VALUE! มักใช้ร่วมกับ MID, LEFT, RIGHT เพื่อตัดคำตามตำแหน่ง
MID ตัดข้อความออกจากตำแหน่งเริ่มต้นที่คุณกำหนด โดยระบุความยาวของข้อความที่ต้องการ สะดวกมากสำหรับดึงข้อมูลบางส่วนจากข้อความที่ยาว เช่น รหัสสินค้า, รหัสพนักงาน, หรือวันที่ที่ฝังตัวในข้อความ
TEXT ใช้รหัสรูปแบบ (Format Codes) เช่น "dd/mm/yyyy" สำหรับวันที่ หรือ "#,##0.00" สำหรับตัวเลขมีทศนิยม ผลลัพธ์ที่ได้จะเป็นข้อความ (Text) เสมอ ไม่สามารถนำไปคำนวณต่อได้
TEXTAFTER ดึงข้อความหลังจากตัวคั่นที่ระบุ รองรับการเลือกลำดับตัวคั่น (instance_num) การค้นหาแบบ case-insensitive (match_mode) และค่า default เมื่อไม่พบ (if_not_found) ทำให้แยกข้อมูลได้ง่ายกว่า MID+FIND ใช้คู่กับ TEXTBEFORE TEXTSPLIT
TEXTBEFORE ดึงข้อความก่อนหน้าตัวคั่นที่ระบุ รองรับการเลือกลำดับตัวคั่น (instance_num) การค้นหาแบบ case-insensitive (match_mode) และค่า default เมื่อไม่พบ (if_not_found) ทำให้แยกข้อมูลได้ง่ายกว่า LEFT+FIND ใช้คู่กับ TEXTAFTER TEXTSPLIT
TEXTJOIN รวมข้อความจากหลายเซลล์หรือทั้งช่วงเป็นข้อความเดียว โดยกำหนดตัวคั่นเองได้และสั่งข้ามเซลล์ว่างได้ในคำสั่งเดียว ต่างจาก CONCATENATE ที่ต้องพิมพ์ตัวคั่นและเชื่อมทีละเซลล์เอง งานที่ใช้บ่อยคือรวมที่อยู่หลายบรรทัด สร้างลิสต์คั่นด้วยคอมม่าไว้ส่งออก หรือรวมผลลัพธ์จาก FILTER ให้ออกมาเป็นข้อความเดียว
FILTERXML ดึงข้อมูลเฉพาะส่วนจาก XML content โดยใช้ XPath expression เพื่อระบุตำแหน่งของข้อมูลที่ต้องการ ทำให้ง่ายในการแยกข้อมูลที่เป็นประโยชน์จากผลลัพธ์ XML ที่ส่งกลับมาจาก WEBSERVICE มักใช้ร่วมกับ WEBSERVICE และ ENCODEURL เพื่อดึงข้อมูลจาก web API
WEBSERVICE ส่งคำขอ GET ไปยัง URL ของ web service (API) บนอินเทอร์เน็ตหรือ Intranet และส่งกลับข้อมูลที่ได้รับ ใช้เพื่อดึงข้อมูลแบบ real-time เช่น ราคาหุ้น อัตราแลกเปลี่ยน ข้อมูลสภาพอากาศ โดยปกติใช้ร่วมกับ FILTERXML เพื่อแยกข้อมูลที่ต้องการจากผลลัพธ์ XML และกับ ENCODEURL เพื่อเข้ารหัส URL ให้ปลอดภัย
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่