Page 1 of 1
รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 7:25 am
by natthaporn
ผลลัพธ์ที่ต้องการ
1.1aaa\bb bb
1.2aaa\cc\ eee eee
ccc\xx\yyy\1zzzz 1zzzz
ดิฉันต้องการตัดคำให้เหลือคำที่อยู่หลังเครื่องหมาย "\" ของด้านขวามือสุดคะ
ขอบคุณคะ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 8:07 am
by DhitiBank
หากเครื่องหมาย "\" ในข้อความมีมากสุดแค่ 3 ตำแหน่ง ทดลองแบบนี้ครับ
ที่ C2 คีย์
Code: Select all
=IF(ISERR(FIND("\",B2,FIND("\",B2)+1)),MID(B2,FIND("\",B2)+1,255),
IF(ISERR(FIND("\",B2,FIND("\",B2,FIND("\",B2)+1)+1)),MID(B2,FIND("\",B2,FIND("\",B2)+1)+1,255),
MID(B2,FIND("\",B2,FIND("\",B2,FIND("\",B2)+1)+1)+1,255)))
Enter คัดลอกลงล่าง
แต่หาก "\" เกิน 3 ตำแหน่ง คงต้องใช้สูตรที่ยืดหยุ่นกว่า รอท่านอื่นครับ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 8:26 am
by natthaporn
ก่อนอื่นต้องขอขอบคุณ คุณ DhitBank สำหรับคำแนะนำคะ
ข้อมูลจริงมี "\" เกินกว่า 3 ตำแหน่งคะ มีมากสุด 8 ตำแหน่งคะ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 8:52 am
by DhitiBank
เอาใหม่ครับ เปลี่ยนเป็นสูตรนี้จะยืดหยุ่นกว่า (เพิ่งคิดออก)
Code: Select all
=MID(B2,LOOKUP(2,1/("\"=MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1)),ROW(INDIRECT("1:"&LEN(B2))))+1,255)
Ctrl+Shift+Enter
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 9:00 am
by natthaporn
ได้ผลลัพธ์ตามที่ต้องการแล้วคะ ขอบคุณ คุณ DhitiBank มากคะ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 9:04 am
by natthaporn
ขอรบกวนคุณ DhitiBank อีกอย่างหนึ่งได้ไหมคะ
รบกวนอธิบายความหมายของสูตรนี้ได้ไหมคะ ดิฉันต้องการเรียนรู้ไว้ เพื่อที่จะได้นำไปประยุกต์ใช้กับงานอื่น ๆ คะ
ขอบคุณมากคะ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 9:37 am
by DhitiBank
ได้ครับ
1. ดูคำสั่ง Mid ด้านในก่อนครับ รูปแบบคือ
MID(คำที่จะตัด,ตำแหน่งเริ่มต้นที่จะตัด,จำนวนอักษรที่จะตัด)
แต่ตำแหน่งเริ่มต้นที่จะตัดในที่นี้ ระบุทุกตำแหน่งตั้งแต่อักษรแรกจรถึงอักษรสุดท้ายในคำนั้นๆ จุดประสงค์เพื่อจะแยกอักษรออกมาเป็นตัวๆ ครับ
(**ลองลากคลุมสูตรแล้วกด F9 ดูครับ เป็นวิธีแกะสูตร ดูเสร็จแล้วกด ESC)
2. จับชุดอักษรทีแยกได้มาเท่ากับ "\" เพื่อหาว่ามีอักษรตำแหน่งใดบ้างที่เป็น "\" หากเป็นตัวเดียวกันจะขึ้นว่า TRUE ไม่ใช่ก็ FALSE (True จะมีค่า =1 ส่วน False=0 ครับ ลองกด F9 ดู)
3. คราวนี้ เอา 1 มาหารด้วย TRUE FALSE ที่ได้ ตำแหน่งไหนเป็น true หารแล้วจะได้ 1 ตำแหน่งไหนเป็น 0 หารแล้วก็ error ที่ต้องทำเช่นนี้เพื่อเอามาใช้ในสูตร Lookup ครับ
4. Lookup ใช้เพื่อหาว่า "\" ตำแหน่งสุดท้ายอยู่ที่อักขระที่เท่าไร โดยจากข้อ 3) ผลหารจะมีแค่ 1 กับค่า error แต่เราสั่ง lookup เลข 2 ซึ่งไม่มีแน่นอน สูตรก็จะเลือกเลข 1 ที่อยู่ทางขวาสุด จากนั้นสูตรก็จะคืนค่าโดยเลือกจากชุดตัวเลข ROW(INDIRECT("1:"&LEN(B2))) ในตำแหน่งเดียวกันกับเลข 1 ที่อยู่ทางขวาสุดครับ ซึ่งนั่นคือตำแหน่งของ "\" ที่อยู่ทางขวาสุดนั่นเอง
5. MID ด้านนอกสุด ใช้เพื่อตัดให้เหลือแค่ที่ต้องการ เพราะเราได้ตำแหน่งที่จะเริ่มตัดจากข้อ 4) (+1 ด้วยเพื่อสั่งให้ตัดหลังจากเครื่องหมาย "\") จำนวนที่ตัดคือ 255 เพราะเลขนี้เป็นจำนวนอักขระมากที่สุดที่มีได้ใน 1 เซลล์ครับ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 1:15 pm
by natthaporn
ขอบคุณ คุณ Dhitibank มากๆคะ สำหรับคำอธิบายที่ละเอียด ชัดเจน สามารถทำความเข้าใจได้ง่ายคะ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 6:29 pm
by snasui

มาช่วยเสริมครับ
DhitiBank wrote:5. MID ด้านนอกสุด ใช้เพื่อตัดให้เหลือแค่ที่ต้องการ เพราะเราได้ตำแหน่งที่จะเริ่มตัดจากข้อ 4) (+1 ด้วยเพื่อสั่งให้ตัดหลังจากเครื่องหมาย "\") จำนวนที่ตัดคือ 255 เพราะเลขนี้เป็นจำนวนอักขระมากที่สุดที่มีได้ใน 1 เซลล์ครับ
จำนวน 255 นั้นเป็นเพียงตัวเลขที่ประมาณว่าตัดมาแล้วไม่เกิน 255 อักขระ หากเกินกว่านั้นสามารถกรอกตัวเลขได้ตามต้องการ
สำหรับความสามารถรองรับข้อมูลของ Excel นั้น ในเซลล์หนึ่ง ๆ สามารถบรรจุอักขระได้ถึง 32,767 อักขระครับ
natthaporn wrote:ดิฉันต้องการตัดคำให้เหลือคำที่อยู่หลังเครื่องหมาย "\" ของด้านขวามือสุดคะ
อีกตัวอย่างสูตรครับ
=TRIM(RIGHT(SUBSTITUTE(A1,"\",REPT(" ",100)),100))
Enter
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 9:43 pm
by DhitiBank

ขอบพระคุณอาจารย์มากครับที่มาแก้ไข ปล่อยไก่อีกแล้วเรา และสำหรับสูตรใหม่ด้วยครับ ขอจดก่อน
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 10:07 pm
by snasui
DhitiBank wrote:
ขอบพระคุณอาจารย์มากครับที่มาแก้ไข ปล่อยไก่อีกแล้วเรา และสำหรับสูตรใหม่ด้วยครับ ขอจดก่อน

ไม่ได้เป็นการปล่อยไก่แต่อย่างใดครับ ถือเป็นความคลาดเคลื่อนเล็กน้อย เพราะถึงจะเข้าใจตามนั้นก็ยังได้คำตอบที่ถูกต้อง การช่วยอธิบายเพื่อนสมาชิกอย่างละเอียดตามโพสต์ด้านบนนับว่าเป็นความกรุณาด้วยความจริงใจ ทั้งได้ทบทวนถึงความเข้าใจของเราต่อสูตรที่เขียน มีการช่วยกันเสริมให้เกิดความสมบูรณ์ ทำให้เกิดประโยชน์ร่วมกัน ฟอรั่มนี้ก็จะยิ่งมีคุณค่าต่อทุก ๆ คนยิ่ง ๆ ขึ้นไปครับ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 10:40 pm
by DhitiBank

ขอบพระคุณครับ
Re: รบกวนสอบถามสูตรการตัดคำ
Posted: Thu Feb 26, 2015 11:11 pm
by Totem