: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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#1

Post by manager »

เงื่อนไขที่ 1 R2
ให้สูตรบอกแบบเตือนเมื่อไม่เป็นไปตามความจริง ตอนกรอกลงเวลาและวันที่ผิด แต่ในความคิดผมเท่าที่มีจะเป็นสูตรได้ไหม? จึงถามมาก่อน เพราะถ้าเป็นในวันเดียวกัน คำตอบ 15:28:00 เป็นคำตอบที่ผิด
เงื่อนไขที่ 2 R2
คำตอบผิด(31:52:00) ที่ถูกคือ 16:20:00
ความหมายคือเครื่องหยุดเดินวันที่13/8/2013 เวลา 9:20:00 - ซ่อมจบ วันที่ 15/8/2013 เวลา9:00:00 หักเวลาที่ไม่เกี่ยวกับเวลาทำงานแล้ว
จากตารางด้างล่างดังนี้
วันที่13 เหลือ 7 ช.ม.
วันที่14 เหลือ 8.2 ช.ม.
วันที่15 เหลือ 1 ช.ม.
รวมเวลาเครื่องหยุดเดินทั้งหมด 16 ช.ม. 20 นาที(นับจากเวลาทำงานจริง)
ขอบคุณมากครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#2

Post by bank9597 »

:D ลองตามนี้ครับ

ที่ S2 คีย์ =IF(($M2+$L2)-($J2+$K2)<0,"ผิด",SUM("16:20:00"-(K2),"08:20:00"-("16:20:00"-(L2)),"08:20:00"*DAY(($M2+$L2)-($J2+$K2)))) คัดลอกลงมา
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#3

Post by manager »

1.ผมขอเปลี่ยนคำว่า"ผิด"เป็นค่าว่างๆครับ
2. S:S ต้องขอโทษครับที่ให้โจษน้อยเลยได้คำตอบที่ไม่ถูก
ขอโทษครับ
You do not have the required permissions to view the files attached to this post.
cruzz
Member
Member
Posts: 54
Joined: Thu Dec 23, 2010 1:07 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#4

Post by cruzz »

1.ผมเก็บข้อมูลแบบนี้ครับ 5/12/2013 8:00:00 กับ 5/12/2013 12:00:00
ที่ผลลัพท์นั้นผมสั่งลบกันธรรมดา เช่น A2-A1 แต่ปรับแต่งที่รูปแบบเซลล์ครับ
ให้แสดงจำนวน วัน ชั่วโมง และนาที เท่าที่ทำมามันคำนวณถูกครับ

2.ใช้ =Datedif(วันที่เริ่ม, วันที่สิ้นสุด, รูปแบบ) แต่อันนี้ผมไม่แน่ใจเรื่องเวลา
ลองอ่านเพิ่มเติมได้ที่ http://www.snasui.com/viewtopic.php?f=3&t=352
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#5

Post by bank9597 »

:D ลองตามนี้ดูครับ

ที่ s2 คีย์ =IF(($M2+$L2)-($J2+$K2)<0,"",IF(INT(($M2+$L2)-($J2+$K2))=0,$L2-$K2,SUM("16:20:00"-(K2),"08:20:00"-("16:20:00"-(L2)),"08:20:00"*DAY(($M2+$L2)-($J2+$K2))))) คัดลอกลงมา
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#6

Post by manager »

1.แปลกครับ หากกรอกเพิ่มอีก1ชั่วโมงใน L19 จะต้องเป็น 17:20:00 ครับ เเต่นี่เป็น 25:40:00 ผิดครับ
(เวลาจะกรอกตามจริงและเวลา-วันที่จะเปลี่ยนตลอดครับ)
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#7

Post by bank9597 »

manager wrote:1.แปลกครับ หากกรอกเพิ่มอีก1ชั่วโมงใน L19 จะต้องเป็น 17:20:00 ครับ เเต่นี่เป็น 25:40:00 ผิดครับ
(เวลาจะกรอกตามจริงและเวลา-วันที่จะเปลี่ยนตลอดครับ)
ที่ S2 คีย์ IF(($M2+$L2)-($J2+$K2)<0,"",IF(INT(($M2+$L2)-($J2+$K2))=0,$L2-$K2,SUM("16:20:00"-(K2),"08:20:00"-("16:20:00"-(L2)),"08:20:00"*IF((DAY(($M2+$L2)-($J2+$K2))-1)=0,1,(DAY(($M2+$L2)-($J2+$K2))-1))))) คัดลอกลงมาครับ
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#8

Post by manager »

ผมลองเพิ่มเวลาและวันลงไปก็สามารถเป็นเวลาเครื่องหยุดเดินได้แล้ว แต่พอปรับให้ระยะห่างเป็นเพิ่มเดือนมากขึ้น คำตอบเวลาจะไม่ปรับตามเดือนที่ทิ้งระยะห่างให้แล้ว รู้สึกว่าสูตรจะได้แค่เดือนเดียว ใน S21
ขอปรับแก้เผื่อสูตรไปเลย 12 เดือนไม่ทราบว่าได้ไหมครับ
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#9

Post by bank9597 »

manager wrote:ผมลองเพิ่มเวลาและวันลงไปก็สามารถเป็นเวลาเครื่องหยุดเดินได้แล้ว แต่พอปรับให้ระยะห่างเป็นเพิ่มเดือนมากขึ้น คำตอบเวลาจะไม่ปรับตามเดือนที่ทิ้งระยะห่างให้แล้ว รู้สึกว่าสูตรจะได้แค่เดือนเดียว ใน S21
ขอปรับแก้เผื่อสูตรไปเลย 12 เดือนไม่ทราบว่าได้ไหมครับ
ขอบคุณครับ
:D ลองตามนี้ครับ

ที่ S2 คีย์ =IF(OR((($M2+$L2)-($J2+$K2))<0,COUNT($J2:$M2)=0),"",IF(INT(($M2+$L2)-($J2+$K2))=0,$L2-$K2,SUM("16:20:00"-($K2),"08:20:00"-("16:20:00"-($L2)),"08:20:00"*(IF((($M2)-($J2))=0,0,(($M2)-($J2))-1))))) คัดลอกลงมา


ผมปรับไฟล์ใหม่มาให้ด้วยครับ ลองดูทั้งสองไฟล์
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#10

Post by manager »

ขอนับถือ
ขอบพระคุณยิ่ง
ขอบคุณมากครับ :cp: :cp: :cp:
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#11

Post by manager »

ผลลองแบบแยกคอลัมท์ออกมาช่วง COUNT($B25:$K25) ทำมาใหม่เจอปัญหาครับ
ไม่ทราบว่าเป็น ##### ได้อย่างไร ที่ Q25 แต่ลากลงไปก็ไม่เป็นอะไร
ผมลองเปลี่ยน ที่ B25 เป็น 4/8/2013 = Q25 8:00:00
ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#12

Post by bank9597 »

:D

เนื่องจากที่ K25 คุณได้คีย์เวลาไว้ 07:30 น. ซึ่งเป็นการเข้าก่อนเวลา ทำให้ไม่เข้าเงื่อนไขที่คุณได้ตั้งไว้ สูตรจึงทำงานผิดพลาดครับ

คุณต้องแก้ปัญหาเรื่องเงื่อนมาก่อนครับ ว่าตกลงแล้วการคีย์ข้อมูลนั้น มีโอกาสเป็นแบบไหนบ้าง
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
User avatar
bank9597
Guru
Guru
Posts: 3868
Joined: Wed Aug 17, 2011 11:49 am

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#13

Post by bank9597 »

:D ผมลองคิดใหม่โดยเอาแต่เวลาทำการเท่านั้น คือ 8.00น. ถึง 17.00น. หักออก 40 นาที เหลือ 8.20 นาที/วัน

เนื่องจากคุณใช้ Excel2003 ไม่สามารถซ้อน IF ได้เกิน 7 ชั้น ผมเลยคิดสูตรแบบรวมและแยกสูตร ลองนำไปใช้ดูก่อนครับว่า จะใช้ได้ไหม

ที่ Q24 คีย์

Code: Select all

=IF(OR((($J24+$K24)-($B24+$C24))<0,COUNT($B24:$C24,$J24:$K24)=0),"",IF($B24=$J24,(IF(AND($K24>="12:00:00"+0,$K24<="12:40:00"+0),"12:00:00",IF($K24<"12:00:00"+0,$K24,$K24-"00:40:00"))-IF(AND($C24>="12:00:00"+0,$C24<="12:40:00"+0),"12:00:00",IF($C24<"12:00:00"+0,$C24,$C24-"00:40:00"))),SUM(IF(AND($C24>="08:00:00"+0,$C24<="12:00:00"+0),("12:00:00"-$C24)+"04:20:00",IF(AND($C24>="12:40:00"+0,$C24<="17:00:00"+0),"17:00:00"-$C24,IF(AND($C24>"12:00:00"+0,$C24<"12:40:00"+0),"04:20:00"+0,0))),IF(AND($K24>="08:00:00"+0,$K24<="12:00:00"+0),$K24-"08:00:00",IF(AND($K24>="12:40:00"+0,$K24<="17:00:00"+0),($K24-"12:40:00")+"04:00:00",IF(AND($K24>"12:00:00"+0,$K24<"12:40:00"+0),"04:00:00"+0,0))),"08:20:00"*(IF((($J24)-($B24))=0,0,(($J24)-($B24))-1)))))
คัดลอกลงมา

ส่วนวิธีที่ 2 ลองดูตามแนบครับ
You do not have the required permissions to view the files attached to this post.
Forum Rules
  1. อย่าใช้ภาษาแชทในการตอบ-ถาม
  2. ตั้งชื่อกระทู้ให้สื่อถึงปัญหาและไม่เจาะจงตัวผู้ตอบ
  3. ให้อธิบายปัญหาและระบุคำตอบที่ต้องการมาในฟอรัม
  4. ควรแนบไฟล์ตัวอย่างมาที่ฟอรั่ม
  5. หากใช้ VBA ให้ลองเขียนมาเองก่อนเสมอ
  6. แจ้งผลการใช้งานทุกครั้งเมื่อได้รับคำตอบ
manager
Bronze
Bronze
Posts: 326
Joined: Fri Jul 13, 2012 4:59 pm

Re: สูตรรวม-ลบวันที่เเละเวลาไม่ตรง

#14

Post by manager »

ขอบคุณมากเป็นอย่างยิ่ง
ขอคารวะ
:thup: :cp: :cp:
Post Reply