Page 1 of 1

การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 10:34 am
by romeko
เคยได้อ่านบล็อกของอาจารย์ เกี่ยวกับ "เทคนิคการตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ" โดยไม่ได้ใช้ฟังชั่น Text To Column เห็นว่าเป็นประโยชน์กับการทำงานดีค่ะ แต่ว่า ถ้าเราจะแยกเป็นแบบแนวนอน ทำอย่างไรค่ะ

เช่น ข้อมูลในเซล์ล A1 คือ Somchai/นิด/ดวงกมล/อนุภาพ/ลักขณา รบกวนด้วยค่ะ ลองพลิกแพลงสูตรแล้ว แต่ไม่สำเร็จ ขอบคุณค่ะ :D

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 10:37 am
by snasui
:D แนบไฟล์และสูตรที่ลองเขียนเองแล้วมาดูกันครับ

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 10:40 am
by bank9597
:D ใช้ Text To Column ได้ครับ ลองดูตามภาพ

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 10:56 am
by romeko
:D แนบไฟล์และสูตรที่ลองเขียนเองแล้วมาดูกันครับ

แนบมาแล้วค่ะ

ขอบคุณ คุณ Guru มากค่ะ แต่ที่ต้องการคือไม่ได้ทำใน Text To Column ค่ะ

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 11:02 am
by snasui
:D ที่ C1 ปรับสูตรเป็นด้านล่างครับ

=TRIM(MID(SUBSTITUTE(","&$A1,",",REPT(" ",$B1)),COLUMNS($C1:C1)*$B1,$B1))

Enter > Copy ไปทางขวา

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 11:08 am
by romeko
โอ้โห รวดเร็วดีจังค่ะ ของคุณอย่างสูงค่ะ ก็คือถ้าเป็นแนวนอนให้เปลี่ยน "Rows" อีกนิดนะค่ะ ที่ A4 List "Ake" ทำไมจึงได้แยกเป็น Ak e ค่ะ

ลองใส่เครื่องหมายท้าย Ake, ก็หายค่ะ ถ้าหลายร้อยแถวก็คงวุ่นอยู่ค่ะ :D

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 11:22 am
by snasui
:D สูตรตัวอย่างที่ผมเขียนไว้นั้นเขียนเพื่อแยกข้อความที่มีเครื่องหมายคั่น หากมีเครื่องหมายคั่นบ้าง ไม่มีคั่นบ้างแสดงว่าอยู่นอกเหนือความมุ่งหมายของสูตร จำเป็นต้องประยุกต์ใช้ต่อไปจากนั้นครับ

ตัวอย่างการประยุกต์ตามด้านล่างครับ

=TRIM(MID(SUBSTITUTE(","&$A1,",",REPT(" ",$B1)),COLUMNS($C1:C1)*$B1+ISERR(FIND(",",$A1)),$B1))

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 12:17 pm
by romeko
:D ขอบคุณอาจารย์อย่างสูงค่ะ

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 12:43 pm
by romeko
รบกวนสอบถามอีกนิดนะค่ะ (ไม่แน่ใจว่าผิดระเบียบการตั้งกรัทู้ถามหรือเปล่า ถ้าผิดจะตั้งกระทู้ถามใหม่นะค่ะ) คือมันเกี่ยวเนื่องกันค่ะ ถ้าต้องการนับเซลล์เฉพาะที่มีข้อมูลในช่วงเซลล์ ดังที่เราแยกรายชื่อออกมาแล้ว ติดปัญหาที่ว่า
ที่ใช้อยู่คือ =counta() ปรากฎว่านับทั้งหมดแถวเลย คือนับสูตรไปด้วย (คือก๊อบสูตรลากออกไป) ทั้งที่ ชื่อมีแค่ 2 เซลล์ รบกวนด้วยค่ะ

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 1:28 pm
by joo
:D ลองแบบนี้ดูว่าตรงกับที่ต้องการไหม ที่เซลล์ใดๆคีย์ =COUNTA(C1:H1)-COUNTIF(C1:H1,"")

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 1:32 pm
by snasui
:D
romeko wrote: ถ้าต้องการนับเซลล์เฉพาะที่มีข้อมูลในช่วงเซลล์ ดังที่เราแยกรายชื่อออกมาแล้ว ติดปัญหาที่ว่า
ที่ใช้อยู่คือ =counta() ปรากฎว่านับทั้งหมดแถวเลย คือนับสูตรไปด้วย (คือก๊อบสูตรลากออกไป) ทั้งที่ ชื่อมีแค่ 2 เซลล์
กรณีต้องการนับว่าแยกออกมาแล้วมีกีชื่อสามารถใช้สูตรที่เซลล์ใด ๆ เพื่อนับว่า A1 มีกี่ชื่อได้ตามตัวอย่างด้านล่างครับ

=B1-LEN(SUBSTITUTE(A1,",",""))+1 หรือนับจากค่าที่แยกออกมาแล้ว

=COUNTIF(C1:N1,"*?")

Re: การตัดข้อความที่คั่นด้วยเครื่องหมายต่าง ๆ (แนวนอน)

Posted: Sat Nov 24, 2012 1:42 pm
by joo
:tt: สูตรของท่านอาจารย์ง่ายและสั้นดีนะครับ :lol: