: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

รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#1

Post by spinoza »

สวัสดีครับทุกท่าน

อยากจะให้ทุกท่านช่วยเขียนสูตรเกี่ยวกับการเช็คจำนวนเวลาการทำงานของพนักงานตามเงื่อนไขดังนี้ให้ผมครับ

1.อยากให้ช่วยเขียนสูตรในช่อง E โดยให้เช็คว่าจำนวนชั่วโมงการทำงานของช่อง C ซึ่งเป็นเวลาการทำงานขาเข้า และ ช่อง D ซึ่งเป็นเวลาการทำงานขาออก

มีจำนวนรวมในการทำงานเท่าไหร่ ( โดยให้มีการหักพัก 1 ชั่วโมงครับ )

2.อยากจะให้ช่วยเขียนสูตรในช่อง F โดยมีเงื่อนไขดังนี้ครับ

2.1 หากช่อง B แสดงว่าทำงาน ให้เช็คช่อง C , D หากมีข้อมูลทั้ง 2 ช่อง ให้นำข้อมูลในช่อง G มาแสดง
หากจำนวนชั่วโมงการทำงานในช่อง G เกิน 8 ชั่วโมง ให้นำข้อมูลในช่อง G + กับข้อมูลในช่อง H และนำมาแสดงครับ

2.2 หากช่อง B แสดงว่าหยุด W ให้เช็คช่อง C , D หากมีข้อมูลทั้ง 2 ช่อง ให้นำข้อมูลในช่อง I มาแสดง
หากจำนวนชั่วโมงการทำงานในช่อง I เกิน 8 ชั่วโมง ให้นำข้อมูลในช่อง I + กับข้อมูลในช่อง J และนำมาแสดงครับ

2.3 หากช่อง B แสดงว่าหยุด H ให้เช็คช่อง C , D หากมีข้อมูลทั้ง 2 ช่อง ให้นำข้อมูลในช่อง K มาแสดง
หากจำนวนชั่วโมงการทำงานในช่อง K เกิน 8 ชั่วโมง ให้นำข้อมูลในช่อง K + กับข้อมูลในช่อง J และนำมาแสดงครับ

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

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#2

Post by snasui »

:D E2, F2 สามารถคีย์สูตรด้านล่างตามลำดับครับ
  1. Code: Select all

    =IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-1/24)
  2. Code: Select all

    =IF(AND(C2<>"",D2<>""),CHOOSE(MATCH(B2,{"ทำงาน","หยุด W","หยุด H"},0),IF(G2>=8/24,G2+H2,G2),IF(I2>=8/24,I2+J2,I2),IF(K2>=8/24,K2+J2,K2)),0)
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#3

Post by spinoza »

snasui wrote::D E2, F2 สามารถคีย์สูตรด้านล่างตามลำดับครับ
  1. Code: Select all

    =IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-1/24)
  2. Code: Select all

    =IF(AND(C2<>"",D2<>""),CHOOSE(MATCH(B2,{"ทำงาน","หยุด W","หยุด H"},0),IF(G2>=8/24,G2+H2,G2),IF(I2>=8/24,I2+J2,I2),IF(K2>=8/24,K2+J2,K2)),0)
ผมมีเรื่องรบกวนอาจาร์ยเพิ่มเติมจากเดิม 2 เรื่องครับ

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

1.ปรากฏว่ามีอยู่ 35 ข้อมูลที่ขึ้น ###### ผมไม่แน่ใจว่าผมได้ทำผิดขั้นตอนอะไรรึเปล่า และผมได้แนบ File ตัวอย่างที่ขึ้น ##### มาให้แล้วครับโดยตัวอย่างอยู่ในช่องข้อมูลที่ 5 ถึง 39 ครับ

2.ผมอยากจะขอให้อาจารย์ช่วยเพิ่มเงื่อนไขของสูตรในช่อง F ให้ว่า หากทำตามเงื่อนไขแล้ว ไม่พบ จำนวน WH หรือจำนวน WH+OT ให้ขึ้นข้อความว่า Erro ครับผมได้แนบ File ตัวอย่างที่ต้องการให้สูตรออกมาแล้วในช่อง F2,F3,F4 ครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#4

Post by snasui »

:D ค่อย ๆ ถามตอบกันไปครับ

เซลล์ E5 ค่าที่ถูกต้องเป็นเท่าใด คำนวณอย่างไรจึงได้ค่านั้นครับ

หากคำตอบคือ 1:00:00 แสดงว่าคุณ spinoza ให้ข้อมูลเกี่ยวกับเวลาพักมาไม่ครบ ให้อธิบายเกียวกับเวลาพักมาใหม่อย่างละเอียดครับ
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#5

Post by spinoza »

snasui wrote::D ค่อย ๆ ถามตอบกันไปครับ

เซลล์ E5 ค่าที่ถูกต้องเป็นเท่าใด คำนวณอย่างไรจึงได้ค่านั้นครับ

หากคำตอบคือ 1:00:00 แสดงว่าคุณ spinoza ให้ข้อมูลเกี่ยวกับเวลาพักมาไม่ครบ ให้อธิบายเกียวกับเวลาพักมาใหม่อย่างละเอียดครับ
คำึตอบที่ถูกต้องในช่อง E5 คือ 1:00:00 ครับ

ผมต้องขออภัยด้วยครับผมให้ข้อมูลไม่ครบเกี่ยวกับเรื่องการหักพักตามที่อาจาร์ยบอกมาครับ

ผมจะข้อเพิ่มเติมเกี่ยวกับการหักพักว่าหาก มีเวลาการทำงานเกิน 5 ชั่วโมงให้หักพัก 1 ชั่วโมงครับ โดยยึดข้อมูลจากช่อง C , D เหมือนเดิมครับ

ต้องขออภัยอีกครั้งที่ให้ข้อมูลไม่ครบครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#6

Post by snasui »

:D ปรับสูตรที่เซลล์ E2 เป็นด้านล่างครับ

=IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-((D2-C2+(D2<C2))>=5/24)*1/24)
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#7

Post by spinoza »

ได้เรียบร้อยแล้วครับ ขอบพระคุณมากนะครับ
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#8

Post by spinoza »

snasui wrote::D ปรับสูตรที่เซลล์ E2 เป็นด้านล่างครับ

=IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-((D2-C2+(D2<C2))>=5/24)*1/24)
อาจารย์ครับ รบกวนสอบถามเพิ่มเติมครับ หากผมอยากจะเพิ่มเติมเงื่อนไขที่ว่า ช่อง C2 และ D2 ไม่มีข้อมูลหรือมีข้อมูลแต่ไม่ใช่ช่วงเวลา ให้ ช่อง E2 แสดงเป็น blank ผมควรจะเพิ่มเติมสูตรลงไปอย่างไรครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#9

Post by snasui »

:D ปรับสูตรเป็นด้านล่างครับ

=IF(AND(Isnumber(C2),Isnumber(D2)),D2-C2+(D2<C2)-((D2-C2+(D2<C2))>=5/24)*1/24,"")
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#11

Post by spinoza »

snasui wrote::D ปรับสูตรที่เซลล์ E2 เป็นด้านล่างครับ

=IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-((D2-C2+(D2<C2))>=5/24)*1/24)
อาจาร์ยครับผมต้องรบกวนขอให้อาจาร์ยช่วยปรับสูตรให้อีกครั้งครับเนื่องจากผมต้องการเพิ่มเงื่อนไขอีก 1 ข้อครับ

โดยที่ หากช่อง C2 มีข้อมูล แต่ช่อง D2 ไม่มีข้อมูล
และ หากช่อง D2 มีข้อมูล แต่ช่อง C2 ไม่มีข้อมูล

อยากให้ช่อง F แสดงว่า ขาดเวลาทำงานครับ

ผมได้แนบ File ที่อาจารย์ได้เคยแนะนำสูตรพร้อมใส่ตัวอย่างที่ต้องการมาอีกครั้งครับ

ต้องขออภัยที่ไม่แจ้งเงื่อนไขให้เรียบร้อยครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#12

Post by snasui »

:D ตัวอย่างสูตรที่ E2 ครับ

=IF(COUNT(C2:D2)<>2,"ขาดเวลาทำงาน",IF(AND(C2="",D2=""),0,D2-C2+(D2<C2)-((D2-C2+(D2<C2))>=5/24)*1/24))
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#13

Post by spinoza »

เรียนอาจารย์ครับ

ต้องขอภัยและขอรบกวนอาจารย์อีกครั้งนะครับ

พอดีผมได้นำ 2 สูตรที่อาจารย์ ช่วยแนะนำไปเพื่อตรวจสอบของระบบที่ผมใช้ทำงานเกี่ยวกับเวลาการทำงาน และคิดจำนวนชั่วโมง OT ของพนักงานครับ

พอดีผมติดปัญหาซึ่งอยากรบกวนให้อาจาร์ยช่วย ดูและแนะนำสูตรเพิ่มเติมให้อีกครั้งครับ

โดยที่ ผมติดปัญหา อยู่ 2 อย่างครับ

1.เพราะเหตุใด ช่อง (X5,Y5) (X9,Y9) (X10,Y10) (X11,Y11) ถึงมีค่าไม่เท่ากันครับ เพราะหากดูจากตาเปล่า ค่าที่ได้นั้นเท่ากันครับ
2.ผมอยากรบกวนให้อาจาร์ยช่วยปรับสูตรในช่อง X ครับ โดยมีเ้งื่อนไขเพิ่มเติมขึ้นมาว่า หาก เวลาการทำงาน มี OT แต่ไม่ถึง ครึ่งชั่วโมงให้แสดงข้อมูลตามจริงครับ ( ระบบที่ผมใช้นั้น ค่าล่วงเวลาจะคิดให้เมื่อเวลาการทำงาน OT เกินครึ่งชํ่วโมงครับ )

ผมได้ตัดข้อมูลที่มีปัญหาแนบ File ตัวอย่างมาให้เรียบร้อยแล้วครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#14

Post by snasui »

:D ข้อ 1 ศึกษาจาก Link นี้ครับ wordpress/difference-form-calculation/

หากจะให้เท่ากับต้องใช้ฟังก์ชั่นปัดเศษเข้ามาช่วยเช่น Round
spinoza wrote:หาก เวลาการทำงาน มี OT แต่ไม่ถึง ครึ่งชั่วโมงให้แสดงข้อมูลตามจริงครับ
ปรับจากสูตรไหน และโปรแกรมจะทราบได้อย่างไรว่ามี OT ลองอธิบายมาอีกรอบโดยอ้างอิงจากเซลล์ในไฟล์ปัจจุบันครับ
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#15

Post by spinoza »

snasui wrote::D ข้อ 1 ศึกษาจาก Link นี้ครับ wordpress/difference-form-calculation/

หากจะให้เท่ากับต้องใช้ฟังก์ชั่นปัดเศษเข้ามาช่วยเช่น Round
spinoza wrote:หาก เวลาการทำงาน มี OT แต่ไม่ถึง ครึ่งชั่วโมงให้แสดงข้อมูลตามจริงครับ
ปรับจากสูตรไหน และโปรแกรมจะทราบได้อย่างไรว่ามี OT ลองอธิบายมาอีกรอบโดยอ้างอิงจากเซลล์ในไฟล์ปัจจุบันครับ
อยากให้อาจารย์ช่วยปรับสูตรเพิ่มเงื่อนไขในช่อง Y ครับ โดยอยากให้คำตอบที่ได้ออกมาในเป็นแบบ ช่อง X6 , X7 , X8 ครับ

สำหรับโปรแกรมนั้นจะคิด OT ตามชั่วโมงการทำงานที่แสดงในช่อง L , M ซึ่งเป็นเวลาเข้า และ เวลาออกครับ

โดยระบบจะคิดว่าเป็น OT ในกรณีที่มีชั่วโมงการทำงานรวมหักพัก 1 ชั่วโมงแล้ว ตั้งแต่ 08.30 ชั่วโมงขึ้นไปครับ

ยกตัวอย่างครับ

วันที่ 1 เวลาเข้า 07.00 เวลาออก 16.29
วันที่ 2 เวลาเข้า 07.00 เวลาออก 16.30

วันที่ 1 จะไม่ได้ชั่วโมง OT แต่สำหรับวันที่ 2 จะได้ชั่วโมงในส่วนของ OT 30 นาทีครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#16

Post by snasui »

:D สูตรในคอลัมน์ Z ที่เขี่ยนมาแล้ว ไม่ตรงกับความต้องการอย่างไรจึงต้องเขียนใหม่ครับในคอลัมน์ Y ครับ
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#17

Post by spinoza »

snasui wrote::D สูตรในคอลัมน์ Z ที่เขี่ยนมาแล้ว ไม่ตรงกับความต้องการอย่างไรจึงต้องเขียนใหม่ครับในคอลัมน์ Y ครับ
ตามสูตรในคอลัมน์ Z ผมต้องการทำสูตรไว้ช่วยเช็คชั่วโมงการทำงานของพนักงานตามข้อมูลในช่อง L M ครับ

( สูตรนี้ต้องให้ช่วยเช็คการคิดจำนวนชั่วโมงการทำงานทั้งหมดตามจริงครับ )

ส่วนสูตรที่ผมต้องการให้อาจาร์ยแนะนำเพิ่มในช่อง Y นั้นผมต้องการให้สูตรช่วยเช็ค ระบบอีกทีครับ ว่าระบบที่ผมใช้อยู่นั้น คำนวณค่าลวงเวลาของพนักงานออกมาได้ถูกต้อง ตามจริงชั่วโมงการทำงานของพนักงานหรือไม่ครับ

(สูตรนี้ต้องการให้ช่วยเช็คเวลาการทำงานทั้งหมดเช่นเดียวกันครับ แต่ที่เกิน 8 ชั่วโมงหลังจากที่รวมหักพักแล้ว ให้ช่วยเช็คเพิ่มเติมว่าระบบนั้นทำการจ่ายโอทีให้กับพนักงานได้ถูกต้องหรือไม่ครับ โดยนำไป + กับค่าโอทีที่ทางระบบคิดให้ครับโดยค่าโอทีแสดงในช่อง AA ถึง AG ครับ )

ปัญหาที่ติดอยู่นิดเดียวคือว่า หากเวลาการทำงานของพนักงานเกิน 8 ชั่วโมงหลังจากหักที่พักแล้ว แต่มีเวลาการทำงานล่วงเวลาไม่ถึง 30 นาที ระบบจะไม่คิด OT ให้ครับ ซึ่งพอนำสูตรทั้ง 2 สูตรมาเทีบยกันในช่อง W จึงได้ค่าเป็น FALSE ครับ

โดยผมจะนำทั้งสองช่อง มาตรวจสอบว่าตรงกันไหม ในช่อง W อีกที ครับ

อย่างไรแล้วต้องขออภัยที่ต้องรบกวนอาจารย์ในสูตรเดิมๆหลายๆรอบด้วยครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#18

Post by snasui »

:D ตามข้อมูลตั้งแต่ AA:AG ไม่สามารถหาคำตอบตามที่ต้องการได้ ให้ตรวจสอบเงื่อนไขใหม่ครับ

ยกตัวอย่างสูตรที่ Y6 คือ

Code: Select all

=IF(AND(L6<>"",M6<>""),CHOOSE(MATCH(I6,{"ทำงาน","หยุด W","หยุด H"},0),IF(AA6>=8/24,AA6+AC6,AA6),IF(AE6>=8/24,AE6+AF6,AE6),IF(AG6>=8/24,AG6+AF6,AG6)),0)
สูตรที่เราใช้จะมี 3 สูตรเพื่อตรวจสอบว่าคอลัมน์ I เป็นค่าใด หากเป็นค่า ทำงาน จะใช้สูตร IF(AA6>=8/24,AA6+AC6,AA6) มาเป็นคำตอบ

หากค่าเป็น หยุด W จะใช้สูตร IF(AE6>=8/24,AE6+AF6,AE6) มาเป็นคำตอบ

หากค่าเป็น หยุด H จะใช้สูตร IF(AG6>=8/24,AG6+AF6,AG6) มาเป็นคำตอบ

และเนื่องจาก I6 เป็น หยุด W คำตอบที่เราต้องการจะมาจากสูตร IF(AE6>=8/24,AE6+AF6,AE6)

สูตรนี้เป็นการตรวจสอบว่า AE6 มีค่ามากกว่าหรือเท่ากับ 8:00 หรือไม่ หากใช่ ให้นำ AE6 ไปบวกกับ AF6 หากไม่ใช่ให้นำ AE6 มาเป็นคำตอบ

สำหรับกรณีนี้ AE6 มีค่า 8:00 ดังนั้นคำตอบจึงต้องนำ AE6+AF6 ซึ่งก็คือนำ 8:00+0

จะเห็นได้ว่า ไม่มีเซลล์ใดมีเศษนาทีตามที่เขียนคำตอบมาเป็นตัวอย่าง คงต้องทบทวนเงื่อนไขการหาคำตอบในคอลัมน์ Y ใหม่ทั้งหมดครับ
spinoza
Member
Member
Posts: 105
Joined: Fri Oct 10, 2014 9:32 am

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#19

Post by spinoza »

ตามที่อาจารย์ได้อธิบายมาผมเข้าใจเรียบร้อยแล้วครับ ผมต้องขออภัยอาจารย์อีกครั้งที่ให้เงื่อนไขไม่ชัดเจนครับ

หากเป็นแบบนั้น ผมขอให้อาจารย์ช่วยปรับสูตรในช่อง Z แทนครับ

โดยรบกวนอาจารย์เพิ่มเงื่อนไขที่ว่า

หากคำนวณเวลาการทำงานหลังจากที่หักพัก 1 ชั่วโมงแล้ว ได้จำนวนชั่วโมงการทำงานได้ตั้งแต่ 8.01 ถึง 8.29 ให้แสดงค่า 8.00 แทนครับ

ผมได้แนบ File ตัวอย่างพร้อมคำตอบที่ต้องการมาให้เรียบร้อยแล้วครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31153
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: รบกวนแนะนำสูตรเกี่ยวกับการเช็คจำนวนชั่วโมงการทำงานครับ

#20

Post by snasui »

:D ตัวอย่างการปรับสูตรตามด้านล่างครับ

Z5 คีย์

Code: Select all

=IF(COUNT(L5:M5)=1,"ขาดเวลาทำงาน",IF(AND(L5="",M5=""),0,IF(M5-L5+(M5<L5)-((M5-L5+(M5<L5))>5/24)*1/24<"8:30"+0,8/24,M5-L5+(M5<L5)-((M5-L5+(M5<L5))>=5.01/24)*1/24)))
Post Reply