Page 1 of 1
การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Mon Feb 17, 2020 11:20 pm
by Xengsue
สวัสดีครับ
มีเรื่องมาให้ปวดหัวอีกแล้วครับ
รบกวน ด้วยครับ
คือบริษัทผมให้มีการสุ่มดูว่าใครจะได้อยู่ทีมไหน โดยกำหนดให้มี 4 ทีม, ในแต่ละทีมจำนวนคนต้องเท่ากันเช่น:
- พนักงานทั้งหมดมี 20 คน สุ่มแบ่งเป็น 4 ทีมให้เท่ากัน จะได้ทีมละ 5 คน.
- หรือว่าพนักงานมี 22 คน สุ่มแบ่งเป็น 4 ทีม จะได้ ทีมที่ 1 และ 2 ทีมละ 6 คน, ส่วนทีมที่ 3 และ 4 จะได้ทีมละ 5 คน.
ผมพยายามทำแล้วไม่ได้สักที จึ่งต้องมารบกวนช่วยให้คำชี้แนะหน่อย
และ ผมอยากทราบอีกว่า ถ้าจะกระจายชื่อทีมตามจำนวนคนที่อยู่ในทีมเช่น:
- ทีมที 1 มีด้วยกัน 5 คน
- ทีมที 2 มีด้วยกัน 3 คน
ผลที่ต้องการคือ
ทีมที 1
ทีมที 1
ทีมที 1
ทีมที 1
ทีมที 1
ทีมที 2
ทีมที 2
ทีมที 2
ข้อนี้ผมได้ใช้ Function IF ก็ได้ตามต้องการอยู่จริงแต่ ติดข้อสงสัยว่า
ถ้าจำนวนทีมมีเยอะเป็น 20 ทีมละครับ สูตร IF ของผมจะยาวไปถึงไหน เพราะฉะนั้น ผมจึ่งอยากขอคำแนะนำที่ทำให้สูตรของผมสั้นลงครับ
ผมจึ่งอยากขอคำแนะนำที่ทำให้สูตรของผมสั้นลงครับ
ขอบคุณครับ
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Mon Feb 17, 2020 11:52 pm
by snasui

ดาวน์โหลดไฟล์จาก Link นี้ไปศึกษาแล้วลองปรับใช้ดูก่อน ติดตรงไหนค่อยถามกันต่อครับ
wordpress/random-in-group/
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Tue Feb 18, 2020 9:34 pm
by Xengsue
ขอบคุณมากครับ
ปัญหาแรกได้ตามคำแนะนำของอาจารย์ครับ นำไปประยุกต์ใช้ได้หลายอย่างด้วยครับ
แล้วยังมีอีกข้อที่ยังไม่ได้ ไม่รู้จะทำยังไงต่อครับ คืออยากหาวิธีลดสูตรให้สั้นลงกว่าสูตรเดิมครับ
คึอสูตรก็ทำได้ตามต้องการครับ แต่ถ้าหากจำนวนทีมมีมากเป็น 10-20 ทีม จะทำให้สูตร IF ช้อน IF ยาวมากครับ เลยอยากถามว่าพอมีวิธีอื่นที่ทำได้ไหมครับ
Screenshot_20200218-212228_Excel.jpg
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Tue Feb 18, 2020 9:42 pm
by snasui

ไฟล์ที่แนบมานี้ต้องการจะทำอะไร ถ้าเป็นปัญหาเดียวกันเหตุใดไม่ใช้สูตรที่ผมแนะนำไป หรือทำแล้วติดปัญหาตรงไหน กรุณาอธิบายพร้อมชี้ให้เห็นปัญหาที่เกิดขึ้นจะได้ตอบต่อไปจากนั้นครับ
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Wed Feb 19, 2020 7:20 pm
by Xengsue
snasui wrote: Tue Feb 18, 2020 9:42 pm

ไฟล์ที่แนบมานี้ต้องการจะทำอะไร ถ้าเป็นปัญหาเดียวกันเหตุใดไม่ใช้สูตรที่ผมแนะนำไป หรือทำแล้วติดปัญหาตรงไหน กรุณาอธิบายพร้อมชี้ให้เห็นปัญหาที่เกิดขึ้นจะได้ตอบต่อไปจากนั้นครับ
ที่ อาจารย์แนะนำมา ผมทำได้แล้วครับ
ประเด็นที่ผมจะทำต่อคือ ขยายทีมออกแล้ว จะสุ่มกับทีมอื่นเพื่อแข่งขันกันครับ
แต่ผมก็ใช้ IF FUNCTION ทำได้ตามต้องการเช่นกัน แต่ผมอยากลดสูตรให้สั้นลงครับ
ขอบคุณครับ
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Wed Feb 19, 2020 9:53 pm
by snasui

ผมคิดว่าสามารถใช้สูตรที่แนะนำไปมาช่วยได้ ได้ลองทำแล้วหรือไม่ หากยังไม่ได้ลองกรุณาลองทำมาดูก่อน ติดตรงไหนค่อยถามกันต่อครับ
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Sun Feb 23, 2020 5:00 pm
by Xengsue
snasui wrote: Wed Feb 19, 2020 9:53 pm

ผมคิดว่าสามารถใช้สูตรที่แนะนำไปมาช่วยได้ ได้ลองทำแล้วหรือไม่ หากยังไม่ได้ลองกรุณาลองทำมาดูก่อน ติดตรงไหนค่อยถามกันต่อครับ
ผมทำได้ตามต้องการแล้วครับ
จากสูตร
1582450624748.jpg
เปลี่ยนเป็นสูตรนี้ครับ
Screenshot_20200223-163232_Excel.jpg
ผมโหลดไว้ให้เพื่อมีใครค้นหาเจอเพื่อเอาไปศึกษาดู
และ ขอบคุณ อาจารย์ ทุกท่านที่ให้คำแนะนำครับ
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Mon Feb 24, 2020 1:07 am
by Bo_ry
B2
=CEILING((COUNTA($D$2:$D$22)-SUM(B$1:B1))/COUNTA($A2:$A$5),1)
F2
=INDEX($A:$A,AGGREGATE(15,6,ROW($A$2:$A$5)/(COUNTIF(F$1:F1,$A$2:$A$5)<$B$2:$B$5),RANDBETWEEN(1,SUMPRODUCT(--(COUNTIF(F$1:F1,$A$2:$A$5)<$B$2:$B$5)))))
H2
=INDEX($A:$A,AGGREGATE(15,6,ROW($B$2:$B$5)/($B$2:$B$5>=COLUMN($A$1:$I$1)),ROWS(H$2:H2)))
I2
=INDEX($E$2:$E$15,MATCH(H2,INDEX($F$2:$F$15&REPT(0,ISNUMBER(MATCH($E$2:$E$15,I$1:I1,))),),))
Re: การจัดการแบ่งจำนวนคนเป็นทีมเพื่องานแข่งขัน
Posted: Mon Feb 24, 2020 10:49 am
by Xengsue
Bo_ry wrote: Mon Feb 24, 2020 1:07 am
B2
=CEILING((COUNTA($D$2:$D$22)-SUM(B$1:B1))/COUNTA($A2:$A$5),1)
F2
=INDEX($A:$A,AGGREGATE(15,6,ROW($A$2:$A$5)/(COUNTIF(F$1:F1,$A$2:$A$5)<$B$2:$B$5),RANDBETWEEN(1,SUMPRODUCT(--(COUNTIF(F$1:F1,$A$2:$A$5)<$B$2:$B$5)))))
H2
=INDEX($A:$A,AGGREGATE(15,6,ROW($B$2:$B$5)/($B$2:$B$5>=COLUMN($A$1:$I$1)),ROWS(H$2:H2)))
I2
=INDEX($E$2:$E$15,MATCH(H2,INDEX($F$2:$F$15&REPT(0,ISNUMBER(MATCH($E$2:$E$15,I$1:I1,))),),))
ขอบคุณมากสำหรับอีกแนวทางครับ