Page 1 of 1

นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Mon Apr 15, 2019 6:50 pm
by yangkodza
ต้องการให้ช่วยนับวันด้วยสูตรครับ แบบไม่นับวันเสาร์-อาทิตย์
นับเฉพาะจันทร์-ศุกร์ ครับ
นับวันแบบมีเงื่อนไข.xlsx

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Mon Apr 15, 2019 7:10 pm
by puriwutpokin
ที่ E3=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(C3&":"&C4)),2)<6))

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Mon Apr 15, 2019 9:03 pm
by yangkodza
puriwutpokin wrote: Mon Apr 15, 2019 7:10 pm ที่ E3=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT(C3&":"&C4)),2)<6))
ขอบคุณมากครับผม

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Tue Apr 16, 2019 12:44 pm
by Bo_ry
อีกแบบ
=NETWORKDAYS(C3,C4)

ต้องใส่วันที่เป็นปีคศ.

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Thu Apr 18, 2019 8:50 am
by linzhengli
เรียน ท่านสมาชิกที่นับถือ
กรณีเป็น excel2003 ใช้สูตรว่าอย่างไรครับ และขอบคุณมา ณ โอกาสนี้

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Thu Apr 18, 2019 9:04 am
by logic
linzhengli wrote: Thu Apr 18, 2019 8:50 am เรียน ท่านสมาชิกที่นับถือ
กรณีเป็น excel2003 ใช้สูตรว่าอย่างไรครับ และขอบคุณมา ณ โอกาสนี้
ดูลิงก์นี้ได้เลยครับ viewtopic.php?f=3&t=148 :)

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Sat Apr 20, 2019 1:42 pm
by yangkodza
สอบถามเพิ่มเติมครับ
อยากให้กด + เพิ่มจำนวนวัน แต่ไม่นับเสาร์-อาทิตย์ แต่แสดงผลวันในกล่องข้อความ
อยากให้กด - ลดจำนวนวัน เรื่อยๆ จนถึงวันเริ่มต้น แสดงเป็น 0
day.png
แสดงวันทร์.xlsm

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Sat Apr 20, 2019 1:58 pm
by snasui
:D ในโอกาสถัดไปกรุณาแจ้งมาด้วยว่า Procedure ที่ต้องการสอบถามปัญหาชื่ออะไร อยู่ที่ Module ไหน จะได้เข้าถึงปัญหาได้โดยไวครับ

ตัวอย่าง Code ตามที่ถามมาครับ

Code: Select all

Sub dateminus()
    Do
        [i9].Value = [i9].Value - 1
    Loop Until VBA.Weekday([i9], vbMonday) <= 5
End Sub
Sub dateplus()
    Do
        [i9].Value = [i9].Value + 1
    Loop Until VBA.Weekday([i9], vbMonday) <= 5
End Sub

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Wed Apr 24, 2019 11:56 pm
by yangkodza
snasui wrote: Sat Apr 20, 2019 1:58 pm :D ในโอกาสถัดไปกรุณาแจ้งมาด้วยว่า Procedure ที่ต้องการสอบถามปัญหาชื่ออะไร อยู่ที่ Module ไหน จะได้เข้าถึงปัญหาได้โดยไวครับ

ตัวอย่าง Code ตามที่ถามมาครับ

Code: Select all

Sub dateminus()
    Do
        [i9].Value = [i9].Value - 1
    Loop Until VBA.Weekday([i9], vbMonday) <= 5
End Sub
Sub dateplus()
    Do
        [i9].Value = [i9].Value + 1
    Loop Until VBA.Weekday([i9], vbMonday) <= 5
End Sub
ขอเพิ่มเติมครับ
ตอนนี้ I9 นับ วันเลื่อนเป็นตามที่ต้องการแล้วครับ
รบกวน ปรับ I10 ให้นับวันให้ถูกต้องทีครับ โดยไม่นับรวมเสาร์อาทิตย์
จากไฟล์งาน
วันเริ่มต้น และวันสิ้นสุด คือวันที่ 19 เมษายน 2562 ซึ่งตรงกับวันศุกร์
พอเรากด + ไป 1 ครั้ง วันสิ้นสุดจะเป็นวันที่ 22 เมษายน 2562 ซึ่งตรงกับวันจันทร์ (ถูกต้องแล้วครับ)
แต่อยากให้ I10 นับ 1

ในกรณีเดียวกัน ถ้าเรากด + ไปจนถึงวันที 29 เมษายน 2562
ค่าใน I10 ก็จะเป็น 6 เพราะเรานับข้ามวันเสาร์อาทิตย์
รบกวนอาจารย์ช่วยชี้แนะด้วยครับ
แสดงวันทร์.xlsm

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Thu Apr 25, 2019 6:43 am
by snasui
:D ตัวอย่างการปรับสูตรครับ

=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT($I$8&":"&$I$9)),2)<6))-1

-1 หมายถึงไม่นับวันปัจจุบัน จาก 19/4/2019-19/4/2019 นับเป็น 0 แต่หากต้องการให้เป็น 1 ให้ลบ -1 ออกไปครับ

Re: นับวันแบบมีเงื่อนไข ไม่นับรวมเสาร์อาทิตย์

Posted: Thu Apr 25, 2019 7:57 am
by yangkodza
snasui wrote: Thu Apr 25, 2019 6:43 am :D ตัวอย่างการปรับสูตรครับ

=SUMPRODUCT(--(WEEKDAY(ROW(INDIRECT($I$8&":"&$I$9)),2)<6))-1

-1 หมายถึงไม่นับวันปัจจุบัน จาก 19/4/2019-19/4/2019 นับเป็น 0 แต่หากต้องการให้เป็น 1 ให้ลบ -1 ออกไปครับ
ขอบคุณมากครับได้ตรงตามที่ต้องการใช้งานแล้วครับ :cp: