Page 1 of 1
สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Thu Apr 06, 2023 12:44 pm
by Momnoy
เวลาทำงานคือ 7:30-16:30 และมีเวลาพัก 11:30-12:30 ครับ
โดยต้องการนับเฉพาะในเวลางานครับ หลักเลิกงานไม่ต้องการให้นับครับ
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Thu Apr 06, 2023 1:20 pm
by snasui

ตัวอย่างสูตรหักพักเที่ยงออก 1 ชม. ครับ
=TEXT(C3-B3-(AND(MOD(B3,1)<=12/24,MOD(C3,1)>=13/24))/24,"[m]:ss")
Enter > Copy ลงด้านล่าง
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Thu Apr 06, 2023 3:24 pm
by Momnoy
snasui wrote: Thu Apr 06, 2023 1:20 pm

ตัวอย่างสูตรหักพักเที่ยงออก 1 ชม. ครับ
=TEXT(C3-B3-(AND(MOD(B3,1)<=12/24,MOD(C3,1)>=13/24))/24,"[m]:ss")
Enter > Copy ลงด้านล่าง
ขอบคุณครับอาจารย์
ในส่วนข้อ 2 3 นั้น สามารถใส่เงื่อนไขเพิ่มเติมอีกได้ไหมครับ
2023-03-30 08:34:05
2023-03-31 09:04:09
กรณีข้ามวันแบบนี้ เวลารอคอยคือ 08:34:05 - 16:30:00 ของวันที่ 30 ( หักพักเที่ยงออกอีก 1 ชม ) โดยไม่นับเวลาจนถึง 7:30 ของอีกวัน
และจบที่ 09:04:09 ของวันที่ 31
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Thu Apr 06, 2023 6:24 pm
by snasui

ผมเข้าใจว่าคำถามเหมือนกันกับกระทู้นี้
http://www.snasui.com/viewtopic.php?f=3&t=7083
มีไฟล์แนบพร้อมตัวอย่างคำตอบให้ศึกษาเรียบร้อยแล้ว ลองนำค่าเข้าไปคีย์ยังตำแหน่งที่เกี่ยวข้องดูว่าได้คำตอบที่ต้องการหรือไม่ อย่างไรครับ
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Sat Apr 08, 2023 9:42 am
by Momnoy
ขอบคุณครับอาจารย์
กรณีข้าม 1 วัน หรือ 2 วันเหมือนเวลายังมีผิดพลาดอยู่ครับ รบกวนอาจารย์ช่วยชี้แหนะด้วยครับ
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Sat Apr 08, 2023 10:14 am
by snasui

ตัวอย่างสูตรที่ J23 ครับ
=IF(I23=0,G23-E23-H23,IF(I23=1,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24),IF(I23=2,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24+7.5/24-ISNUMBER(MATCH(D23+1,วันหยุด!$B:$B,0))*7.5/24),IF(I23>=3,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24)+(I23-1)*7.5/24-SUMPRODUCT(--ISNUMBER(MATCH(ROW(INDIRECT(D23+1&":"&F23-1)),วันหยุด!$B:$B,0)))*7.5/24))))
สำหรับคำตอบที่ยังไม่ถูกต้องกรุณมแจ้งวิธีคำนวณมาอย่างละเอียดว่าคิดอย่างไรจึงได้ค่าเท่านั้นครับ
กรุณาสังเกตว่า เวลาที่เขียนในรูปแบบ Text เช่น "12:30" จะต้องมีการกระทำให้กลับไปเป็นเวลาเสียก่อน เช่น + 0 กลายเป็น "12:30" + 0 ยกเว้นว่ามีการนำไปบวก ลบ คูณ หารกับค่าใด ๆ โดยตรงจึงไม่จำเป็นต้อง + 0 ครับ
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Sat Apr 08, 2023 1:49 pm
by Momnoy
snasui wrote: Sat Apr 08, 2023 10:14 am

ตัวอย่างสูตรที่ J23 ครับ
=IF(I23=0,G23-E23-H23,IF(I23=1,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24),IF(I23=2,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24+7.5/24-ISNUMBER(MATCH(D23+1,วันหยุด!$B:$B,0))*7.5/24),IF(I23>=3,16.5/24-E23+MIN(16.5/24,G23-7.5/24-(G23>"12:30"+0)/24)+(I23-1)*7.5/24-SUMPRODUCT(--ISNUMBER(MATCH(ROW(INDIRECT(D23+1&":"&F23-1)),วันหยุด!$B:$B,0)))*7.5/24))))
กรุณาสังเกตว่า เวลาที่เขียนในรูปแบบ Text เช่น "12:30" จะต้องมีการกระทำให้กลับไปเป็นเวลาเสียก่อน เช่น + 0 กลายเป็น "12:30" + 0 ยกเว้นว่ามีการนำไปบวก ลบ คูณ หารกับค่าใด ๆ โดยตรงจึงไม่จำเป็นต้อง + 0 ครับ
ขอบคุณครับ
สำหรับคำตอบที่ยังไม่ถูกต้องกรุณาแจ้งวิธีคำนวณมาอย่างละเอียดว่าคิดอย่างไรจึงได้ค่าเท่านั้นครับ
แนบวิธีคำนวนเพิ่มเติมที่ไฟล์แนบครับ
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Sun Apr 09, 2023 5:17 pm
by snasui

ตัวอย่างการปรับสูตรตามไฟล์แนบครับ
เซลล์ L23 คีย์
=IF(I23=1,G23-E23-H23,IF(I23=2,((MAX(0,"16:30"-E23)+(MAX(0,MIN(G23,"16:30"+0)-"7:30"))))-H23,IF(I23>2,((MAX(0,"16:30"-E23)+(MAX(0,MIN(G23,"16:30"+0)-"7:30"))))+MAX(0,K23-2)*8/24-H23)))
Enter > Copy ลงด้านล่าง
Re: สูตรการนับเวลาทำงานเฉพาะนาทีที่ทำงาน
Posted: Mon Apr 10, 2023 7:49 am
by Momnoy
ตรงตามที่ต้องการเลยครับ ขอบคุณครับอาจารย์