Page 1 of 1

ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงานครับ

Posted: Thu Oct 16, 2014 9:23 pm
by bababank
T T พยายามหา Google มา 2 วัน ละ
พอดีพี่สาวทำงานอยู่สิงคโปร์ครับ แล้วต้องส่งข้อสอบการทำ Excel ให้เจ้านาย ผมว่ามันยากเกินไปสำหรับพี่สาวผม ผมก็เลยอาสาช่วย
แต่ผมก็ดันทำไม่สำเร็จ ก็เลยจะขอความรบกวน เพื่อนๆ พี่ๆ ด้วยครับ
ว่าผมจะทำยังไงกับสูตรนี้ดีครับ

สิ่งที่ต้องการ
1. มีพนักงาน 9 คน มีเวลาทำงานตั้งแต่ 7 โมงเช้า - 6 โมงเย็น ต้องการให้พนักงานทำงาน วันละ 5-6 ชั่วโมง (5 หรือ 6 ชั่วโมงก็ได้) โดยใช้สูตร สุ่ม ให้เวลาทำงานมีค่าเป็น 1
2. ตรงด้านขวา จะมีช่องสีม่วง ที่เป็น Column ว่า Time (N1) Person (O1) ก็ให้ Random เหมือนกันว่า ใครจะได้หยุดช่วงไหน สมมุติว่า ถ้า กด Random แล้ว ขึ้นมาว่า
Person 2 หยุดตรงช่วงเวลา 9-10 ก็ต้องให้ในตารางเวลา Blank ช่วงเวลานั้นด้วย

ก็มีเท่านี้หละครับ

ผมว่าดูเหมือนมันง่าย แต่พอมานั่งทำ คือ งง ครับ ช่วยผมหน่อยค้าบบบบ T T

Image

https://www.dropbox.com/s/aq1uwhude6hrj ... .xlsx?dl=0

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Fri Oct 17, 2014 8:52 am
by snasui
bababank wrote:ผมว่าดูเหมือนมันง่าย แต่พอมานั่งทำ คือ งง ครับ ช่วยผมหน่อยค้าบบบบ T T
:D ระมัดระวังการใช้ภาษาตามกฎการใช้บอร์ดข้อ 1 ด้านบนด้วยครับ นอกจากนี้ควรแนบไฟล์ตัวอย่างมาในฟอรัมนี้แทนการแนบไว้ที่อื่นครับ

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Fri Oct 17, 2014 12:55 pm
by bababank
ขอโทษทีนะครับ พอดีผมไม่ได้อ่าน กฏระเบียบก่อนเข้ามาโพสต์ครับ

เดี๋ยวจะแนบไฟล์ฝากไว้ใหม่นะครับ

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Fri Oct 17, 2014 3:10 pm
by snasui
:D ลองตามนี้ครับ
  1. ข้อมูลในคอลัมน์ P:R ลบให้เหลือเพียง P13:R21
  2. เซลล์ B2 คีย์สูตร
    =IF(B$1=INDEX($N$2:$N$10,MATCH($A2,$O$2:$O$10,0)),0,1)
    Enter > Copy ไปด้านขวาและลงด้านล่าง

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Sat Oct 18, 2014 1:15 pm
by bababank
อ.ครับ ขอบคุณมากครับ ผมลองทำตามที่ อ. บอกแล้วครับ แต่ว่า มันจะมี Error ขึ้นมา 2 แถวครับ เพราะว่า ช่วงเวลา 7-8 โมงเช้า จนถึง 5-6 เย็น
มันมีทั้งหมด 11 แถว แต่ จำนวน Person มีแค่ 9 คอลัมน์

ตอนนี้ผมก็เลยมาใช้สูตรที่ผมทำไว้อ่ะครับ เป็น =IF($O$6="Person 4",0,1) Fix แต่ละ Cell ไปเลย มันก็สามารถที่จะ Random ชั่วโมงว่างได้ ครบ 9 คน และ 1 ใน 2 คน ก็อาจจะมีชั่วโมงว่างได้ 2 ชั่วโมง/วัน ได้ตรงตามที่ต้องการ

หมายเหตุ แต่มีปัญหาหนักใจอย่างนึงครับ คือว่า โจทย์คือให้

*ทำงานวันละ 5-6 ชั่วโมง ในแต่ละวัน แต่ชั่วโมงทำงาน มีทั้งหมด 11 ชั่วโมง ผมปวดหัวไปหมดแล้วครับ

ลองไปสร้างอีกตาราง ทำ ค่า Randombetween -1,1 เพื่อให้แปลงค่า 1 ไป - 1 ก็สุ่มลบกันไม่ได้อีกครับ มันกลายเป็น 2 เฉยเลย

รบกวน อ.ชี้แนะด้วยครับ ขอบคุณมากๆครับ

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Sat Oct 18, 2014 1:46 pm
by snasui
:D ให้แนบไฟล์ที่ผมตอบไปแล้วมาดูกัน ชี้ให้เห็นว่า Error อย่างไร ต้องการคำตอบอย่างไร ผมจะได้ตอบต่อไปจากนั้น ที่สำคัญต้องอธิบายเงื่อนไข ข้อจำกัด ทั้งหมดมาให้ชัดเจน
bababank wrote:ตอนนี้ผมก็เลยมาใช้สูตรที่ผมทำไว้อ่ะครับ
คำว่า "อ่ะ" ไม่จำเป็นต้องใช้ อย่าลืมกฎการใช้บอร์ดด้านบนครับ

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Sat Oct 18, 2014 2:24 pm
by bababank
ขอโทษครับ อ. (สงสัย ผมว่า ผมคงติดภาษา Chat มามากนะเนี่ย พิมพ์ไปไม่รู้ตัวเลย ^^")

ตรงที่บอก ว่า ของ อ.มัน Error ครับ มันจะ #N/A ตรง ชั่วโมงที่ 4-5 กับ 5-6 มันไม่มี Person ที่ 1 -9 Random มาซ้ำให้ครับ

โจทย์นะครับ


มี พนักงาน 9 คนชั่วโมงทำงาน ทั้งหมด 11 ชั่วโมง สิ่งที่ต้องการคือ

1. ให้พนักงานแต่ละคน มีชั่วโมงหยุดในแต่ละวัน ได้ ไม่เกิน 1-2 ชั่วโมง
2. พนักงานต้องทำงานวันละ 6-8 ชั่วโมงขึ้นไป
3. Random ในทุกๆครั้ง ต้องไม่ให้ พนักงานคนเดียวกันนั้น หยุดพักในช่วงเวลาเช้าเหมือนเมื่อวาน ที่ผ่านมา

ขอบคุณ อ. มากๆ เลยครับ ^^

Re: ปัญหา การ Random เวลาเข้างาน/พักงาน (ชั่วโมง) ของพนักงาน

Posted: Sat Oct 18, 2014 2:42 pm
by snasui
:D ให้ Copy P21:R21 ลงไปอีก 2 บรรทัดแล้วเปลียนสูตรใน B2 เป็น

=IF(B$1=INDEX($N$2:$N$12,MATCH($A2,$O$2:$O$12,0)),0,1)

Enter > Copy ไปด้านขวาและลงด้านล่าง

สำหรับการ Random จะบังคับผลไม่ได้เหมือนดังในข้อ 3 ที่เขียนมา หากต้องการจะทำก็ต้องใช้ VBA เข้ามาจัดการ ซึ่งต้องเขียนมาก่อนตามกฎการใช้บอร์ดข้อ 5 ด้านบนครับ