Page 1 of 1

ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 4:10 pm
by iamporn
ต้องการคำนวณหาผลรวมเวลาที่เข้าสาย, ออกก่อนเวลาเลิกงาน, ลาระหว่างเวลางาน, ลาพักผ่อน, วันหยุดพิเศษ เพื่อสรุปวันลาที่เหลือตอนสิ้นปีค่ะ
เวลาเข้างานปกติ 08:00
เวลาเลิกงาน 17:00
พักกลางวัน 1 ชั่วโมง
โดยมีเงื่อนไขเอาเวลาจากการสรุปขาดงาน (สาย,ออกก่อนเวลา,ลาระหว่างเวลางาน) และเวลาจากการลาพักผ่อน,หยุดพิเศษารวมกัน แล้วนำมาหักกับสิทธิ์การลาพักผ่อน,วันหยุดพิเศษต่ละคน หากพนักงานรายใดใช้สิทธิ์ลาพักผ่อน,วันหยุดพิเศษหมด ให้แสดงผลลัพธ์วันลาที่เหลือติดลบค่ะ

ขอบคุณมากค่ะ

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 4:20 pm
by snasui
:D ค่อย ๆ ถามตอบกันไปนะครับ

เซลล์ M8 ค่า 0:05:00 มีวิธีการคิดอย่างไรจึงได้ค่านี้ครับ :?:

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 4:28 pm
by iamporn
กรณีพนักงานเข้างานสาย เวลาเข้างานปกติ 08:00 แต่พนักงานเข้างานเวลา 08:05 ถือว่าสาย 5 นาทีค่ะ (K8-G8)
ถ้าจะใช้สูตรเฉพาะกรณีสายอย่างเดียว

=IFERROR(IF(TIME(HOUR(K8),MINUTE(K8),SECOND(K8))>"08:00:59"+0,TIME(HOUR(K8),MINUTE(K8),SECOND(K8))-"08:00:00"+0,0),"")

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 4:37 pm
by snasui
:lol: ให้ตอบหลักการได้มาก็เพียงพอ ไม่จำเป็นต้องตอบด้วยสูตรครับ

สำหรับในคอลัมน์ K ให้ลบวันที่ออกเหลือเฉพาะเวลาแล้วใช้การหักลบกันปกติครับ

สูตรที่ M8 สามารถเขียนได้เป็น

=MAX(0,K8-G8)

Enter > Copy ลงด้านล่าง

ไม่ทราบว่ามีเงื่อนไขอื่นใดอีกหรือไม่สำหรับหาค่าในช่องนี้ ให้เขียนมาทั้งหมดในคราวเดียวครับ

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 4:54 pm
by iamporn
สิ่งที่ต้องการคือเผลลัพธ์ที่ได้ของคอลัมน์ K โดยมีงื่อนไขประเภทการลาที่คอลัมน์ J ค่ะ
กรณีสาย เข้างานหลัง 08:00 ถือว่าสาย (คอลัมน์ K - คอลัมน์ G)
กรณีีออกก่อนเวลาเลิกงาน 17:00 ให้นับเวลาที่ออกก่อนเวลา (คอลัมน์ K - คอลัมน์ H)
กรณีลาระหว่างเวลางาน ให้นับเวลาที่ออกและเข้ากลับมา (คอลัมน์ L - คอลัมน์ K)
กรณีลาพักผ่อน นับเวลาเป็นชั่วโมงค่ะ เนื่องจากพนักงานบางรายอาจลาเป็นชั่วโมง ไม่ใช่ลาทั้งวัน (สิทธิ์การลาที่มีคือ คอลัมน์ E กำหนดเป็นวัน)
กรณีวันหยุดพิเศษ นับเวลาเป็นชั่วโมงค่ะ เนื่องจากพนักงานบางรายอาจลาเป็นชั่วโมง ไม่ใช่ลาทั้งวัน (สิทธิ์การลาที่มีคือ คอลัมน์ F กำหนดเป็นวัน)

หากมีวิธีการบันทึกข้อมูลที่อาจารย์คิดว่าดีกว่าตัวอย่างงานนี้ก็ขอคำแนะนำด้วยค่ะ

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 5:21 pm
by snasui
:D เนื่องจากลักษณะของการออกแบบการเก็บข้อมูลตามไฟล์แนบเป็นแบบรายงาน เพื่อให้ง่ายต่อการคำนวณควรมีคอลัมน์ดังนี้ครับ
  1. เวลาเข้างานปกติ (มีแล้ว)
  2. เวลาออกงานปกติ (มีแล้ว)
  3. เวลาเข้างานจริง
  4. เวลาออกงานจริง
  5. ประเภทการบันทึกให้แยกเป็นคอลัมน์ เช่น
    1. คอลัมน์เวลาเข้าสาย
    2. คอลัมน์เวลาพักผ่อน
    3. คอลัมน์เวลาที่ลาระหว่างเวลางาน
    4. ฯลฯ
สำหรับข้อ 1-4 เอาไว้หาเวลาสาย ออกก่อนเวลา
สำหรับข้อ 5 เอาไว้หาเวลาที่ต้องหักออก

กรณีต้องการให้ง่ายต่อการสรุปข้อมูลควรทำมาเป็น Database ไม่ใช่รายงาน ศึกษาลักษณะของ Database ได้จาก Link นี้ครับ Database

Re: ต้องการหาผลลัพธ์การหักวันลา สาย

Posted: Sat Dec 28, 2013 6:08 pm
by iamporn
ที่จริงก็มีรูปแบบรายงานแยกเป็นคอลัมน์ตามอาจารย์แนะนำนะคะ แต่คิดว่าข้อมูลเยอะไปเลยลองรวบทุกประเภทการลามาไว้คอลัมน์เดียวกัน จะลองศึกษาตามคำแนะนำนะคะ ขอบคุณสำหรับคำแนะนำดีๆ ที่ช่วยเพิ่มความรู้ค่ะ