ใช้ FIND() หาตำแหน่งของตัวอักษรแล้วได้ค่า #VALUE!
FIND(find_text, within_text, [start_num])
กรณีแรก ค้นหาเครื่องหมายวงเล็บภายในข้อความ
FIND(
find_text, within_text, [start_num])
B4 = FIND(
"(", A4 , 1 )
C4 = FIND( ")", A4 , 1 )
ได้ผลลัพธ์เป็นตำแหน่งโดยนับจากซ้ายไปขวา
แต่เมื่อในข้อความหลัก(column text)ไม่มีเครื่องหมายวงเล็บอยู่ภายในข้อความจะได้ผลลัพธ์เป็น #VALUE!
แก้ไขโดย
B4 = FIND( "(", A4 &"(" , 1 )
C4 = FIND( ")", A4
&")" , 1 )
กรณีที่นำ FIND() ไปใช้
column A (text) เป็นข้อความทั้งหมด
column B (subtext) เป็นข้อความหลัก
column C (subtext1) เป็นข้อความย่อย ยังติดเครื่องหมายวงเล็บ
column D (subtext2) เป็นข้อความย่อย เอาเครื่องหมายวงเล็บออก
สูตรต่างๆ
column B (subtext)
B2 =MID(A2,1,FIND("(",A2&"( ",1)-1) // คัดเอาข้อความเฉพาะที่อยู่ด้านหน้าเครื่องหมาย "("
column C (subtext1)
C2 =MID(A2, FIND("(",A2&"( "), FIND(")",A2&")")) // คัดเอาข้อความเฉพาะที่อยู่ภายในเครื่องหมาย "(...)"
column D (subtext2)
D2 =MID(A2,FIND("(",A2&"(",1)+1,(FIND(")",A2&")")-FIND("(",A2&"(",1))-1) // คัดเอาข้อความเฉพาะที่อยู่ภายในเครื่องหมาย "(...)" โดยไม่แสดงเครื่องหมาย "(..)"
***D4 ยังติดค่า #VALUE!
ได้รับแรงบันดาลใจจาก
https://medium.com/writing-in-thai-language/excel-...
ปล. เนื้อหาทั้งหมดล้วนเป็นแนวทางที่เกิดจากการทดลองเฉพาะเครื่อง ผลลัพธ์อื่นๆอาจแตกต่างจากนี้ต่างกรณีไป
ไม่มีความเห็น