Page 1 of 2
จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Wed Jun 22, 2011 4:57 pm
by worldgolf
เรียน ถามอาจารย์
ผมมีจำนวนข้อมูลจำนวน 72 ตัว โดยทำการ Concatenate ข้อมูลทีละ 2 ตัว จะได้รูปแบบข้อมูล 4 แบบ คือ
" OO " , " OX " , " XX " , " XO " แล้วนำมารวมกลุ่มโดยไม่ให้ค่าซ้ำกัน ( ใน 1 กลุ่มจะมีข้อมูล 4 ตัว ) แล้วนำข้อมูลในกลุ่มที่ได้มาเปรียบเทียบ
ในคอลัมน์เดียวกัน โดยเริ่มเปรียบเทียบตำแหน่งที่ต่อจากตัวสุดท้ายของกลุ่ม โดยยึดค่าตัวแรกของกลุ่มเป็นหลัก เมื่อเจอค่าและตำแหน่ง
ที่เหมือนกับตัวแรกของกลุ่ม แล้วจึงเอาข้อมูลในกลุ่มตัวที่ 2 , 3 และ 4 มาเปรียบเทียบ
ถ้าข้อมูลตัวแรกของกลุ่มไม่เหมือนกับที่เอาไปเปรียบเทียบ ให้เลื่อนตำแหน่งในการเปรียบเทียบถัดไปทีละ 1 ตำแหน่ง
การจัดรูปแบบไม่ทราบว่าควรจะจัดอย่างไรเพื่อให้สะดวกในการใช้ครับ
ขอขอบคุณอาจารย์เป็นอย่างสูงครับ
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Wed Jun 22, 2011 9:42 pm
by snasui

อ่านแล้วไม่เคลียร์ครับ คอลัมน์ H ก็ไม่ตรงกับคำอธิบาย
ค่อย ๆ ถามตอบกันไปนะครับ ช่วยอธิบายว่า D3:E6 มาได้อย่างไรครับ และจำเป็นต้อง Merge เซลล์หรือไม่ เพราะการ Merge เซลล์ก็เริ่มสร้างความยุ่งยากในการนำไปใช้ต่อ ปกติการ Merge เซลล์จะใช้ประโยชน์ในทำรายงาน การแสดงผลซึ่งเป็นขั้นตอนสุดท้าย ไม่ใช่นำมาทำเป็น Database หรืองานที่ต้องนำไปใช้งานต่อเช่นลักษณะนี้
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Thu Jun 23, 2011 4:10 pm
by worldgolf
ก่อนอื่นต้องกราบขออภัยอาจารย์ด้วยครับ ที่ผมทำให้อาจารย์ต้องเสียเวลาอันมีค่าในการให้ความรู้กับท่านอื่น ๆ
ผมขออนุญาตรบกวนเวลาอาจารย์ด้วยครับ
ขอยกเลิก และเริ่มคำถามใหม่และไฟล์ที่แนบมาใหม่ครับ และต้องกราบขออภัยล่วงหน้าด้วยถ้าต้องทำให้อาจารย์เสียเวลาอีกครับ
เนื่องจากผมไม่ได้เรียนมาครับ
ขอขอบคุณอาจารย์ที่จะทำให้ผมได้ออกมานอกกะลา

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Thu Jun 23, 2011 7:24 pm
by snasui
worldgolf wrote:...และใช้กลุ่มข้อมูลเดิมเปรียบเทียบกับลำดับต่อๆ ไป จนกว่าจะมีกลุ่มข้อมูลใหม่ที่ตัวแรกของกลุ่มใหม่เหมือนกันกับตัวแรกของกลุ่มเก่าจึงจะเปลี่ยนกลุ่มข้อมูลในการเปรียบเทียบ
ไม่เข้าใจว่าเป็นลักษณะอย่างไร ช่วยยกตัวอย่างให้เห็นภาพอีกสักหน่อยครับ
สำหรับคอลัมน์ D สามารถใช้สูตรนี้เพื่อหาข้อมูลออกมาได้ครับ
=If(Countif(B$3:B3,B3)=1,B3,"")
Enter > Copy ลงด้านล่าง ส่วนที่เหลือน่าจะต้องพึ่ง VBA หากได้เขียน VBA ไว้แล้วช่วยแนบมาด้วย จะได้ต่อยอดจากที่ทำไว้แล้วแทนที่จะนับหนึ่งใหม่ ส่วนกรณีหาคำตอบด้วยสูตรคิดว่าเป็นสูตรที่ยากและยาวมาก ค่อย ๆ ถามค่อย ๆ ตอบกันไปเรื่อย ๆ ครับ
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Fri Jun 24, 2011 12:05 am
by worldgolf
เรียนอาจารย์ เมื่อใส่สูตรตามที่อาจารย์บอกได้คำตอบที่ถูกต้องครับ และถ้าต้องการหา กลุ่มข้อมูลเพิ่มตามลำดับที่คอลัมน์ B มาเป็นตัวแรกของแต่ละกลุ่ม โดยลำดับติดกันข้อมูลซ้ำกันไม่นำมาจัดกลุ่ม จะเว้นข้าม ผมลองทำตัวอย่างที่ Sheet 2 ครับ
ขอบพระคุณอาจารย์ครับ
_____________
กบน้อย
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Fri Jun 24, 2011 12:12 am
by worldgolf
ขอประทานอภัยด้วยครับลืม ! แนบไฟล์
ตอนนี้แนบมาเรียบร้อยแล้วครับ.

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Fri Jun 24, 2011 6:15 pm
by snasui
worldgolf wrote:เมื่อใส่สูตรที่คอลัมน์ D ได้คำตอบตามที่ต้องการที่เซลล์ D8 คือ 1 กลุ่มข้อมูล โดยมีข้อมูล " XO " เป็นตัวแรกของกลุ่มนี้
ข้อมูลในกลุ่มตัวที่ 1 XO เปรียบเทียบที่เซลล์ D9
ถ้าข้อมูลเหมือนกันให้แสดงข้อมูลที่เหมือนกัน และจึงทำการเปรียบเทียบข้อมูลตัวที่ 2 ,3 ,4 ให้แสดงคำตอบ " S " , " R ",หรือ " T "
2 OO เปรียบเทียบที่เซลล์ D10
3 XX เปรียบเทียบที่เซลล์ D11
4 OX เปรียบเทียบที่เซลล์ D12
เพื่อให้เข้าใจตรงกัน การอ้างอิงว่า D8 คือ คอลัมน์ D บรรทัดที่ 8
D8 คือ 1 กลุ่มข้อมูลจะต้องเปลี่ยนเป็น D3:D8 ซึ่งจะต้องเขียนเป็นช่วงถึงจะหมายถึงกลุ่มข้อมูลใน Excel
ข้อความที่ว่า XO เปรียบเทียบที่เซลล์ D9 จึงน่าจะหมายถึงนำ D3 เปรียบเทียบกับ
B9 เพราะ D9 เป็นค่าว่าง
ตอนนี้ยังไม่สามารถเข้าใจในสิ่งที่อธิบายมาครับ ช่วยทบทวนเรื่องการอ้างอิงตำแหน่งเซลล์และการแสดงผล s, r, t ว่า
แสดงที่เซลล์ไหนครับ หากใครเข้าใจช่วยอธิบายเพิ่มเติมก็ยินดีครับ

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sat Jun 25, 2011 4:49 pm
by kmb
ขั้นแรก ผมลองทำดูได้ตามไฟล์ที่แนบ ในชีต "Test" โดยเลียนแบบจากผลลัพธ์ในชีต "Sheet2" เฉพาะในส่วนที่คลุมไว้ไม่ทราบว่าตรงกับสิ่งที่ต้องการหรือเปล่าครับ

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sat Jun 25, 2011 5:45 pm
by worldgolf
เรียน อาจารย์
ต้องกราบขออภัยอีกครั้งครับ (ยังไม่รู้ว่าจะมีอีกกี่ครั้ง

)กำลังจะโพสต์มาพอดี. ขอบคุณอาจารย์ที่ส่งไฟล์มาให้ก่อน จากไฟล์ที่ได้รับถูกต้องตามความต้องการครับ รูปแบบนั้นคือ การจัดกลุ่มทั้งหมด
และต้องหาวิธีนำไปใช้ต่อเพื่อเปรียบเทียบและแสดงผลคำตอบที่ต้องการ
แต่ผมขาดทักษะและบกพร่องในการถามเลยทำให้อาจารย์ต้องเสียเวลาอีกครั้งเป็นความสะเพร่าของผมเอง ต่อไปจะรอบคอบให้มากกว่านี้ครับ
ผมได้แนบไฟล์มาใหม่ ถามเรื่องการเปรียบเทียบ โดยขอถามการเปรียบเทียบแบบ1 กลุ่มข้อมูลก่อน และขอแนวทางการและการเปรียบเทียบเมื่อมีมากกว่า 1 ข้อมูล
ขอขอบคุณอาจารย์อีกครั้ง ที่สละเวลาอันมีค่ามาให้ความรู้ครับ
กบน้อย
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sat Jun 25, 2011 10:18 pm
by kmb
ลองดูตัวอย่างตามไฟล์แนบ ที่ชีต "Sheet3" นะครับ ว่าใช่อย่างที่ต้องการหรือเปล่า
เซลล์ F3 ใส่สูตร
=IF(OR($A3<=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38),$A3>LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+4),0,VLOOKUP(SMALL(IF($D$3:$D$38<>"",$A$3:$A$38),A3-LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)),$A$3:$D$38,4,FALSE))
>Ctrl+Shift+Enter ต้องกดพร้อมกันเพราะเป็นสูตรอาร์เรย์
> copy ลงด้านล่าง
เซลล์ G3 ใส่สูตร
=IF(F3<>0,IF($A3=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+1,IF(F3=B3,B3,"R"),IF(F3=B3,"S","R")),0)
>Enter
> copy ลงด้านล่าง
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 12:14 am
by worldgolf
จากตัวอย่างไฟล์แนบ ชีตที่ "Sheet3" ถูกต้อง 99.99% แล้วครับ แต่อีก 0.01% คือว่า ผมต้องกรอกข้อมูลที่คอลัมน์ B ทีละ 1 ตัว ผมอยากให้มีการเปรียบเทียบข้อมูลกับคอลัมน์ B ก่อนจึงค่อยแสดงคำตอบผมได้ทดลองกรอกข้อมูลทีละตัวพอถึงตัวที่ 6 ที่เซลล์ B8 ปรากฎว่าที่ช่องแสดงผลคำตอบ G9:G12 ได้แสดงตัว "R" ขึ้นมาก่อนที่จะมีการเปรียบเทียบกับข้อมูลที่คอลัมน์ B ไม่ทราบว่าสามารถทำให้แสดงผลต่อเมื่อมีการเปรียบเทียบข้อมูล ได้หรือเปล่าครับ
ขอบคุณครับผม
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 10:00 am
by snasui

มีภาพการกรอกข้อมูลไหมครับว่ากรอกแล้วได้ผลเป็นอย่างไร และต้องการให้แสดงเป็นอย่างไร เพื่อจะได้ง่ายต่อการสังเกตครับ
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 11:21 am
by kmb
kmb wrote:ลองดูตัวอย่างตามไฟล์แนบ ที่ชีต "Sheet3" นะครับ ว่าใช่อย่างที่ต้องการหรือเปล่า
เซลล์ F3 ใส่สูตร
=IF(OR($A3<=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38),$A3>LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+
4),0,VLOOKUP(SMALL(IF($D$3:$D$38<>"",$A$3:$A$38),A3-LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)),$A$3:$D$38,4,FALSE))
>Ctrl+Shift+Enter ต้องกดพร้อมกันเพราะเป็นสูตรอาร์เรย์
> copy ลงด้านล่าง
เปลี่ยนสูตรนี้เป็น
=IF(OR($A3<=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38),$A3>LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+
SUMPRODUCT(--($D$3:$D$38<>""))),0,VLOOKUP(SMALL(IF($D$3:$D$38<>"",$A$3:$A$38),A3-LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)),$A$3:$D$38,4,FALSE))
ลองดูตามไฟล์แนบใหม่ครับ ว่าใช่ที่ต้องการหรือเปล่า

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 12:50 pm
by worldgolf
เรียนอาจารย์ ผมส่งรูปมาให้ดูครับ
ขอบคุณครับ
Sample Re2.jpg
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 1:59 pm
by snasui

มองไม่ออกเลยครับ ตัวเล็กมากครับ ผมสังเกตว่ามีคำอธิบายด้วย ช่วย Copy มาวางเพื่อประกอบภาพด้วยครับ
Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 3:27 pm
by kmb
worldgolf wrote:เรียนอาจารย์ ผมส่งรูปมาให้ดูครับ
ขอบคุณครับ
ดูจากรูปชุดนี้ น่าจะยังไม่ได้ใช้ไฟล์ล่าสุดนะครับ เพราะจากไฟล์ล่าสุดจะไม่เป็นแบบนี้แล้ว ยกเว้นตอนที่ยังไม่ได้ใส่ค่าอะไรเลยตามรูปแรก

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Sun Jun 26, 2011 3:44 pm
by worldgolf
เรียนอาจารย์ ผมส่งไฟล์ตัวอย่างที่ Sheet3 มาให้ครับ รบกวนอาจารย์ช่วยดูให้ด้วยครับ
ขอบคุณครับ
กบน้อย

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Mon Jun 27, 2011 8:55 am
by kmb
kmb wrote:
เซลล์ G3 ใส่สูตร
=IF(F3<>0,IF($A3=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+1,IF(F3=B3,B3,"R"),IF(F3=B3,"S","R")),0)
>Enter
> copy ลงด้านล่าง
เปลี่ยนสูตรนี้เป็น
=IF(F3<>0,IF($A3=LOOKUP(2,1/($D$3:$D$38<>""),$A$3:$A$38)+1,IF(NOT(ISBLANK(B3)),IF(F3=B3,B3,"R"),0),IF(NOT(ISBLANK(B3)),IF(F3=B3,"S","R"),0)),0)
>Enter
> copy ลงด้านล่าง
ลองดูตัวอย่างตามไฟล์แนบ ที่ชีต "Sheet3" นะครับ ว่าใช่อย่างที่ต้องการหรือเปล่า

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Mon Jun 27, 2011 11:43 am
by worldgolf
เรียนอาจารย์ เมื่อทดสอบจากไฟล์ล่าสุด เมื่อใส่ข้อมูลตัวที่ 1 ,2 ,3 ผ่านครับ แต่เมื่อใส่ตัวที่ 4 และ 5 มีคำตอบแสดงออกมาครับ และเมื่อใส่ตัวที่ 6 กลับมาเป็นปกติไม่มีการแสดงคำตอบก่อนการเปรียบเทียบ ผมทำตัวอย่างเมื่อกรอกข้อมูลใส่ทั้ง 6 ตัว ที่ Sheet3 . และได้ทดสอบเพิ่มเติมโดยการเปลี่ยนข้อมูลใส่ที่คอลัมน์ B เมื่อใส่ข้อมูลตัวที่ 1 ,2 ผ่าน ใส่ตัวที่ 3 แสดงค่าเปรียบเทียบออกมา ใส่ตัวที่ 4 ,5 กลับมาปกติ และเมื่อใส่ตัวที่ 6 ไม่เป็นไปตามเงื่อนไข คือ ให้เปรียบเทียบต่อเมื่อพบข้อมูลที่คอลัมน์ B เหมือนกับ ตัวแรกของกลุ่มของคอลัมน์ F ถ้าเหมือนกันให้แสดงค่าตัวแรกของกลุ่มข้อมูลออกมา ถ้าไม่เหมือนจะหยุดการเปรียบเทียบ และเลื่อนตำแหน่งของกลุ่มข้อมูล ถัดลงมา 1 ตำแหน่ง เพื่อทำการเปรียบเทียบใหม่ จากข้อมูลชุดใหม่เมื่อใส่ข้อมูลตัวที่ 6 ได้มีการเปรียบเทียบกับข้อมูลคอลัมน์ B ซึ่งเป็นข้อมูลตัวแรกของกลุ่มข้อมูลและได้แสดงคำตอบ "R" ออกมา ไม่ได้แสดงค่าข้อมูล และเมื่อใส่ข้อมูลต่อตัวที่ 7 ,8 ,9 ได้มีการเปรียบเทียบต่อ ซึ่งไม่ทราบว่าถ้ามีการเปรียบเทียบข้อมูลคอลัมน์ B กับ คอลัมน์ F แล้วตัวแรกไม่เหมือนกัน ให้หยุดการเปรียบเทียบ ตัวที่ 2 ,3 ,4 ได้หรือไม่ครับ
และผมขอปรึกษาอาจารย์ว่า ถ้าผมทำ Database และ กลุ่มข้อมูล เป็นรูปแบบตารางแล้วค่อยดึงข้อมูลมาเปรียบเทียบ ไม่ทราบว่าเป็นแนวทางที่ถูกต้องไหมครับและขอคำแนะนำจากอาจารย์ด้วยครับ
กบน้อย

Re: จัดกลุ่มข้อมูลแล้วนำไปเปรียบเทียบในคอลัมภ์เดียวกัน
Posted: Mon Jun 27, 2011 12:08 pm
by kmb
ตัวอย่างที่ทดลองอยู่ที่ชีตไหนครับ
ไม่เห็นชีต "Sheet3" แต่มีชีต "Format1", "Format2", "Format3" เพิ่มขึ้น
คงต้องค่อย ๆ ไปทีละขั้นตอนนะครับ ผมยังไม่ค่อยเข้าใจขั้นตอนการทำงานและจุดประสงค์ที่ต้องการ