Page 1 of 1

เวลามีเงื่อนไข

Posted: Wed Jul 05, 2017 9:48 am
by navara1112
สวัสดีครับ
ช่อง D เป็นโจทย์ ช่อง I เป็นคำตอบ ฐานเวลา 8:00:00 ต้องการปรับทราบเวลามาสายเวลาเท่าไรมีเงื่อนไขดังนี้
1.หากช่อง D ลงไปเวลาน้อยกว่าหรือก่อนเวลา 8:00:00 ให้คำตอบเป็นที ช่อง I เป็น 0:00:00
2.หากเวลามากกว่า 8:00:00 ถึงเวลา 13:00:00 ถือว่ามาสาย ให้สูตรบอก จำนวนเวลา ช่วงเวลา 12:00:00-13:00:00 คำตอบต้อง 4 ช.ม. ไม่นับช่วงเวลาพักนี้ 1ชั่วโมง
3.หากเวลาเกิน 8:31:00ขึ้นไปให้คำตอบเป็นคำ คำว่า "ลากิจ" ในช่อง J ลงมา หากน้อยกว่า 8:30:00 ให้ช่อง J ลงมาเป็นค่าว่าง
4.หากเจอช่อง D ลงมา เจอค่าว่างให้สูตร บอกเป็น 0

Re: เวลามีเงื่อนไข

Posted: Wed Jul 05, 2017 2:17 pm
by DhitiBank
ลองแบบนี้ครับ

I4
=(MOD(D4,1)>TIME(8,,))*(MIN(MOD(D4,1),TIME(12,,))-TIME(8,,))

J4
=IF(I4>TIME(,30,59),"ลากิจ","")

คัดลอกสูตรทั้งสองลงล่างครับ

Re: เวลามีเงื่อนไข

Posted: Wed Jul 05, 2017 3:29 pm
by navara1112
ขอบคุณครับ

Re: เวลามีเงื่อนไข

Posted: Thu Jul 06, 2017 9:10 am
by navara1112
สวัสดีครับ (ช่วงที่2)
ช่อง D เป็นโจทย์ ช่อง I เป็นคำตอบ ฐานเวลา 8:00:00 ต้องการปรับทราบเวลามาสายเวลาเท่าไรมีเงื่อนไขดังนี้
1.หากช่อง D ลงไป เลยเวลา 17:00:01 ให้คำตอบเป็นที่ ช่อง K เป็น 0:00:00
2.หากเวลาช่อง D,E 8:02:10 ถึงเวลา 17:05:00 คำตอบต้องอยู่ใน 8 ช.ม. (ไม่นับช่วงเวลาพักนี้ 1ชั่วโมง 12:00-13:00) ช่อง E เวลาทำงานจาก 13:00-17:00 4 ช.ม.
2.1มีเงื่อนไขต่อคือจะต้องไป + ช่อง I ลงไป คำตอบตัวอย่างแถว7 คือ I7 1:00:00 + K7 5:20:00 รวมเป็น 6:20:00
2.2มีเงื่อนเหมือนกับ ข้อ2.1 คำตอบเป็นทที่ K9 = 1:30:00
3.หากเจอช่อง E ลงมา เจอค่าว่างให้สูตร บอกเป็น 0
4.อยากให้ชองคำตอบ L13 ลงไป เจอคำ ที่ช่อง F13 มีเงื่อนไขคำผูกกับในชีต code2 ในช่อง D และ C

Re: เวลามีเงื่อนไข

Posted: Fri Jul 07, 2017 1:59 am
by DhitiBank
ลองแบบนี้ครับ

K4
=IF(E4="",0,TIME(17,,)-MIN(MOD(E4,1),TIME(17,,))+(MOD(E4,1)<TIME(12,,1)))

L13
=IF(COUNTIF('code (2)'!$C$2:$C$5,F13),VLOOKUP(F13,'code (2)'!$C$2:$D$5,2,0),"")

Re: เวลามีเงื่อนไข

Posted: Fri Jul 07, 2017 10:44 am
by navara1112
สวัสดีครับ
ขอปรับสูตร
1.ช่องคำตอบ I ลงไปหากเจอ ช่อง D หากเป็นค่าว่าง กับอักขระ ให้คำตอบเปลี่ยนเป็น 0
1.2ช่องคำตอบ E ลงไปหากเจอ ช่อง K หากเป็นค่าว่าง กับอักขระ ให้คำตอบเปลี่ยนเป็น 0
2.ยกตัวอย่างช่อง K7 คำตอบต้องตอบ 4:00:00 เป็นเพราะตัวลบมากกว่า ต้องทำเงื่อนไขสูตร ช่อง Eลงไปอย่างไรครับ

Re: เวลามีเงื่อนไข

Posted: Fri Jul 07, 2017 9:55 pm
by DhitiBank
ขอโทษ​ที​ครับ วันนี้​ผม​ไม่มี​คอม อาจ​ต้อง​รอ​อาจารย์​หรือ​เพื่อน​ๆ คน​อื่น​มา​ดู​ให้​ครับ

Re: เวลามีเงื่อนไข

Posted: Sun Jul 09, 2017 9:29 am
by navara1112
ครับ
จะรอครับ

Re: เวลามีเงื่อนไข

Posted: Sun Jul 09, 2017 3:15 pm
by parakorn
ข้อ 1 ปรับสูตร I5 =IF(OR(ISTEXT(D5),D5=""),0,$I$1)-IFERROR(IF(D5="",0,(MOD(D5,1)>TIME(8,,))*(MIN(MOD(D5,1),TIME(12,,))-TIME(8,,))),0) Enter Copy ลงด้านล่าง
ข้อ 1.2 ปรับสูตร K5 = =IF(OR(ISTEXT(D5),D5=""),0,$K$1)-IF(E5="",0,TIME(17,,)-MIN(MOD(E5,1),TIME(17,,))+(MOD(E5,1)<TIME(12,,1))) Enter Copy ลงด้านล่าง
ข้อ 2 ยังสับสนกับผลลัพท์ที่ต้องการครับ เพราะให้เริ่มนับตั้งแต่บ่ายโมง แต่เล่นสแกนออก เที่ยง20 ต้องการให้ได้ผลลัพท์ออกมาเป็น เท่าไหร่ครับ

Re: เวลามีเงื่อนไข

Posted: Sun Jul 09, 2017 7:26 pm
by navara1112
ข้อสอง
เงื่อนคือ กรอกทำงาน D กรอกออกช่อง E
หากพนักงานเวลาเข้าช่วงเช้าคำตอบช่วงเช้าที่ช่อง D ได้คำตอบที่ช่อง I เเล้ว เเต่เผอิญมีธุระออกเวลาช่วงเช้าเช่นกันพอดี เงื่อนไขที่กรอกช่องออก ช่องE เวลาช่วงเช้าตั้งเเต่ 8:00-13:00 เพราะฉนั้นคำตอบบังคับที่ช่อง K =0:00:00 เพราะไม่ได้ทำงาน
ขอบคุณครับ

Re: เวลามีเงื่อนไข

Posted: Sun Jul 09, 2017 8:18 pm
by parakorn
K5 =IF(IF(OR(ISTEXT(D5),D5=""),0,$K$1)-IF(E5="",0,TIME(17,,)-MIN(MOD(E5,1),TIME(17,,))+(MOD(E5,1)<TIME(12,,1)))<0,0,IF(OR(ISTEXT(D5),D5=""),0,$K$1)-IF(E5="",0,TIME(17,,)-MIN(MOD(E5,1),TIME(17,,))+(MOD(E5,1)<TIME(12,,1))))
Enter + Copy ลงครับ

Re: เวลามีเงื่อนไข

Posted: Sun Jul 09, 2017 10:38 pm
by navara1112
ขอยคุณมากๆครับ
เก่งมากๆเลยครับ

Re: เวลามีเงื่อนไข

Posted: Tue Jul 11, 2017 7:58 pm
by navara1112
สวัสดีครับ
ขอเพิ่มสูตรที่1
IF(OR(ISTEXT(D3),D3=""),0,$J$1)-IFERROR(IF(D3="",0,(MOD(D3,1)>TIME(8,,))*(MIN(MOD(D3,1),TIME(12,,))-TIME(8,,))),0)
1.หากเจอค่าว่างๆช่อง D ลงมา ตอบที่ช่อง J= 4:00:00
มีเงื่อนไขคำ AA ที่ช่อง G88:G97 ทำ Define name ชีต code99

ขอเพิ่มสูตรที่2
IF(IF(OR(ISTEXT(E3),E3=""),0,$K$1)-IF(E3="",0,TIME(17,,)-MIN(MOD(E3,1),TIME(17,,))+(MOD(E3,1)<TIME(12,,1)))<0,0,IF(OR(ISTEXT(E3),E3=""),0,$K$1)-IF(E3="",0,TIME(17,,)-MIN(MOD(E3,1),TIME(17,,))+(MOD(E3,1)<TIME(12,,1))))
2.หากเจอค่าว่างๆช่อง E ลงมา ตอบที่ช่อง K= 4:00:00
มีเงื่อนไขคำ AA ที่ช่อง G88:G97 ทำ Define name ชีต code99

3.สูตรช่อง ข้อ1 ช่อง J3 ลงมา และ ข้อ2 ช่อง K3ลงมา เงื่อนไขต่างๆผลลัพท์คำตอบเดิมยังเอาอยู่ครับ
หมายเหตุ หากเป็นลากิจหรือหยุดด้วยเหตุใดๆ ต้องทราบเวลาไม่ทำงาน และหากเป็นวันหยุดปกติให้เป็นคำตอบเป็น 0

Re: เวลามีเงื่อนไข

Posted: Wed Jul 12, 2017 9:03 pm
by snasui
navara1112 wrote:มีเงื่อนไขคำ AA ที่ช่อง G88:G97 ทำ Define name ชีต code99
:D ช่วยอธิบายให่เข้าใจว่าเงื่อนไขเป็นอย่างไรครับ
navara1112 wrote:IF(OR(ISTEXT(D3),D3=""),0,$J$1)-IFERROR(IF(D3="",0,(MOD(D3,1)>TIME(8,,))*(MIN(MOD(D3,1),TIME(12,,))-TIME(8,,))),0)
1.หากเจอค่าว่างๆช่อง D ลงมา ตอบที่ช่อง J= 4:00:00
ใช้ If เข้ามาช่วยได้ เช่น

=If(D3="","4:00"+0,Oldformula)

สหรับที่ระบายสีไว้คือสูตรเดิมครับ

ทำให้ผ่านไปทีละข้อก่อน ผ่านแล้วค่อยถามมาใหม่ ควรทบทวนการใช้ฟังก์ชั่น If ให้เข้าใจจะได้ปรับสูตรเองได้ครับ

Re: เวลามีเงื่อนไข

Posted: Thu Jul 13, 2017 11:42 am
by navara1112
สวัสดีครับ
เพิ่มหรือต้องปรับสูตรเดิมอีกคือ
อธิบาย ผมตั้งโจทย์ผิด ชีต code99 ช่อง G88:G97 ต้องเป็น E88:E97 ดังนี้
เมื่อเจอค่าว่างที่ ชีต 55 ช่อง D ลงมา
มีเงื่อนไขหากเจอคำ AA ที่ช่อง E88:E97 ชีต code99 ผมคิดเข้าใจผมเองว่าซึ่งหากทำชื่อบังคับ แบบ Define name ตรง manager name (ไม่เเน่ใจเรียกถูกไหม) ตั้งคำว่า AA แล้วให้ตอบ 4:00:00 ที่ชีต 55 ช่อง J ลงมา ไม่ทราบว่าได้หรือเปล่าครับ ส่วนหากกรอกวันที่ ที่ช่อง D ให้สูตรคิดตามสูตรเดิม
ขอบคุณครับ

Re: เวลามีเงื่อนไข

Posted: Thu Jul 13, 2017 6:30 pm
by snasui
:D อ่านแล้วไม่เข้าใจครับ

ช่วยทำตัวอย่างมาใหม่ให้สอดคล้องกับคำอธิบาย ชี้ให้เห็นอย่างชัดเจนว่า เมื่อเป็น AA แล้วให้มีค่าเป็น 4:00:00 โดยระบุเซลล์มาให้ชัด

นำค่าใดไปตรวจสอบกับค่าใด ค่านั้นอยู่ในเซลล์ใด ชีตใด คำตอบเป็นค่าเท่าใด อยู่ในชีตใด อยู่ในเซลล์ใด จะได้เข้าใจตรงกันครับ

Re: เวลามีเงื่อนไข

Posted: Thu Jul 13, 2017 10:16 pm
by navara1112
สวัสดีครับ
ชีต code99
1.ช่อง C ลงมาเป็นชื่อไม่ซ้ำ จาก ชีต"ข้อมูล" ช่อง G เพื่อสร้าง ชื่อทั้งหมดมีกี่ชื่อเพราะกรอกตามใจฉัน ระบบสร้างโค๊ดไม่มี จะเรียกว่ากรอกมั่วก็ได้ครับ
2.ช่อง D เป็น code เรียกเพื่อให้เข้าใจง่ายๆ
3.ช่อง E เป็น code อีกชั้นหนึ่งเช่นคำว่า BB แถว2-87 AA แถว 86-89 เป็นเงื่อนไขเพิ่มมา เริ่มสูตรเดิมเมื่อเจอค่าว่างจากชีต "ข้อมูล" ช่อง D,E เข้า กับ ออก มาตอบที่ ช่อง J,K
หากลากสูตรเดิมจะได้คำตอบเป็น 0 ตั้งแต่ แถว 9-ลงไปทั้ง ช่อง J,K
**สีเขียว "ข้อมูล" แถว 9-10 สูตรคิดตามปกติ เพราะมีเวลามาให้คิดที่ช่อง D,E มีคำที่ช่อง G
**สีแสด "ข้อมูล" แถว 11-16 เจอค่าว่างช่อง D,E และมีคำที่ช่อง G9 [In+] คำตอบให้ช่อง J,K= 4:00:00 จากเงื่อนไขจากข้อ3 คำว่า "BB" จากชีต code99 ช่อง E (หรือกำหนด ช่อง G ภาษา มาเจอค่าว่างที่ช่อง D,E ให้ตอบ 4:00:00 )
**สีเทา ชีต "ข้อมูล" แถว 17-20 เจอค่าว่าง คำตอบให้ช่อง J,K= 0:00:00 เพราะเป็นวันหยุด
**ชีต "ข้อมูล" แถว 21-ลงไป เจอค่าว่าง คำตอบให้ช่อง J,K= 0:00:00 เพราะไม่ต้องคำนวนอะไร

Re: เวลามีเงื่อนไข

Posted: Sat Jul 15, 2017 10:23 am
by snasui
:D ผมอ่านแล้วไม่สามารถเข้าใจได้ คงต้องรอสมาชิกท่านอื่นอีกทีครับ

Re: เวลามีเงื่อนไข

Posted: Mon Jul 17, 2017 11:05 pm
by ZEROV
คุณ navara คงอยากชวนออกทะเลครับ :lol:
ภาพตัวอย่างการคำนวนเวลาสุทธิตามเงือนไขเวลาเข้า-ออก
สูตรSymbol คือชื่อสูตรการคำนวนซึ่งมี 14 แบบ
NetHours.png