TEXTBEFORE ดึงข้อความก่อนหน้าตัวคั่นที่ระบุ รองรับการเลือกลำดับตัวคั่น (instance_num) การค้นหาแบบ case-insensitive (match_mode) และค่า default เมื่อไม่พบ (if_not_found) ทำให้แยกข้อมูลได้ง่ายกว่า LEFT+FIND ใช้คู่กับ TEXTAFTER TEXTSPLIT
=TEXTBEFORE(text, delimiter, [instance_num], [match_mode], [match_end], [if_not_found])
=TEXTBEFORE(text, delimiter, [instance_num], [match_mode], [match_end], [if_not_found])
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| text | Text | Yes | ข้อความต้นฉบับที่ต้องการดึงส่วนก่อนตัวคั่น | |
| delimiter | Text/Array | Yes | ตัวคั่นที่ใช้แยก (รองรับ Array หลายตัวคั่น) | |
| instance_num | Number | Optional | 1 | ลำดับตัวคั่นที่ต้องการ (1=แรก, -1=สุดท้าย) |
| match_mode | Number | Optional | 0 | 0 = case-sensitive, 1 = case-insensitive |
| match_end | Number | Optional | 0 | 0 = ไม่จับคู่ต้นข้อความ, 1 = จับคู่ต้นข้อความเป็นตัวคั่น |
| if_not_found | Text | Optional | #N/A | ค่าที่ return เมื่อไม่พบตัวคั่น (default = #N/A error) |
ดึงส่วน username (john) จาก email address โดยใช้ @ เป็นตัวคั่น
ดึงส่วนนำหน้าของรหัสสินค้า เช่น PRD-2024-001 → PRD
ดึงชื่อไฟล์ (ไม่รวมนามสกุล) เช่น report.xlsx → report
TEXTBEFORE("user@example.com", "@")=TEXTBEFORE("user@example.com", "@")
"user"
TEXTBEFORE("John Doe Smith", " ")=TEXTBEFORE("John Doe Smith", " ")
"John"
TEXTBEFORE("A-B-C-D", "-", 2)=TEXTBEFORE("A-B-C-D", "-", 2)
"A-B"
TEXTBEFORE("report.2024.xlsx", ".", -1)=TEXTBEFORE("report.2024.xlsx", ".", -1)
"report.2024"
TEXTBEFORE("Hello World", "WORLD", 1, 1)=TEXTBEFORE("Hello World", "WORLD", 1, 1)
"Hello "
TEXTBEFORE("NoDelimiter", "@", 1, 0, 0, "N/A")=TEXTBEFORE("NoDelimiter", "@", 1, 0, 0, "N/A")
"N/A"
TEXTBEFORE ง่ายกว่ามาก ไม่ต้องคำนวณตำแหน่งและความยาว LEFT+FIND ต้องเขียน =LEFT(A1,FIND(“@”,A1)-1) ซึ่งซับซ้อนกว่าและ error หากไม่พบตัวคั่น
instance_num ลบนับจากท้าย เช่น -1 = ตัวคั่นสุดท้าย, -2 = ตัวคั่นรองสุดท้าย เหมาะสำหรับดึงส่วนนำหน้าตัวคั่นสุดท้าย
เกิดเมื่อไม่พบ delimiter ในข้อความ ใช้ if_not_found กำหนดค่า default แทน error
ได้ ใส่เป็น Array เช่น =TEXTBEFORE(A1, {“-“, “_”}) จะค้นหาทั้ง – และ _ ใช้ตัวที่พบก่อน
Microsoft 365 และ Excel 2024 เท่านั้น ไม่รองรับ Excel 2021 หรือเก่ากว่า
TEXTBEFORE เป็นฟังก์ชันที่ดึงข้อความก่อนหน้าตัวคั่น (delimiter) ที่ระบุ รองรับการเลือกลำดับตัวคั่น (instance_num) การค้นหาแบบ case-insensitive (match_mode) และการกำหนดค่า default เมื่อไม่พบ (if_not_found) ทำให้แยกข้อมูลจากข้อความได้ง่ายกว่าการใช้ LEFT+FIND แบบเดิม ใช้คู่กับ TEXTAFTER และ TEXTSPLIT