:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

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

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
User avatar
bababank
Member
Member
Posts: 5
Joined: Sun Sep 16, 2012 10:01 pm

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

#1

Post 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
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

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

#2

Post by snasui »

bababank wrote:ผมว่าดูเหมือนมันง่าย แต่พอมานั่งทำ คือ งง ครับ ช่วยผมหน่อยค้าบบบบ T T
:D ระมัดระวังการใช้ภาษาตามกฎการใช้บอร์ดข้อ 1 ด้านบนด้วยครับ นอกจากนี้ควรแนบไฟล์ตัวอย่างมาในฟอรัมนี้แทนการแนบไว้ที่อื่นครับ
User avatar
bababank
Member
Member
Posts: 5
Joined: Sun Sep 16, 2012 10:01 pm

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

#3

Post by bababank »

ขอโทษทีนะครับ พอดีผมไม่ได้อ่าน กฏระเบียบก่อนเข้ามาโพสต์ครับ

เดี๋ยวจะแนบไฟล์ฝากไว้ใหม่นะครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

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

#4

Post 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 ไปด้านขวาและลงด้านล่าง
User avatar
bababank
Member
Member
Posts: 5
Joined: Sun Sep 16, 2012 10:01 pm

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

#5

Post 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 เฉยเลย

รบกวน อ.ชี้แนะด้วยครับ ขอบคุณมากๆครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

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

#6

Post by snasui »

:D ให้แนบไฟล์ที่ผมตอบไปแล้วมาดูกัน ชี้ให้เห็นว่า Error อย่างไร ต้องการคำตอบอย่างไร ผมจะได้ตอบต่อไปจากนั้น ที่สำคัญต้องอธิบายเงื่อนไข ข้อจำกัด ทั้งหมดมาให้ชัดเจน
bababank wrote:ตอนนี้ผมก็เลยมาใช้สูตรที่ผมทำไว้อ่ะครับ
คำว่า "อ่ะ" ไม่จำเป็นต้องใช้ อย่าลืมกฎการใช้บอร์ดด้านบนครับ
User avatar
bababank
Member
Member
Posts: 5
Joined: Sun Sep 16, 2012 10:01 pm

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

#7

Post by bababank »

ขอโทษครับ อ. (สงสัย ผมว่า ผมคงติดภาษา Chat มามากนะเนี่ย พิมพ์ไปไม่รู้ตัวเลย ^^")

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

โจทย์นะครับ


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

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

ขอบคุณ อ. มากๆ เลยครับ ^^
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

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

#8

Post 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 ด้านบนครับ
Post Reply