: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

ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

ฟอรัมถาม-ตอบปัญหาการใช้งาน 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#1

Post by ichinisan »

ต้องการให้แสดงวันกำหนดส่งงาน อัตโนมัติ เมื่อรับงานมา แล้วต้องส่ง ภายใน 2 วัน โดยไม่นับวันหยุดตามปฏิทิน บริษัท (วันหยุดบางเดือน ไม่ได้ หยุด ตรงเสาร์ อาทิตย์ บางเสาร์ก็ต้องทำงาน) ตัวอย่างตามเอกสารแนบค่ะ ขอบคุณค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#2

Post by DhitiBank »

ลองแบบนี้ครับ

B2
=WORKDAY(A2,2,$E$2:$E$7)
Enter >> คัดลอกลงล่างครับ

เอ๋ เดี๋ยวก่อน ที่ว่าบางทีไม่ได้หยุดตรงเสาร์อาทิตย์ บางเสาร์ต้องทำงาน แล้ววันอาทิตย์ล่ะครับ :?: สูตรด้านบนอาจยังใช้ไม่ได้ อาจต้องปรับสูตร
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#4

Post by ichinisan »

ปรับยังไงช่วยเสนอแนะด้วยค่ะ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#5

Post by DhitiBank »

มีทำงานวันอาทิตย์บ้างหรือเปล่าครับ
menem
Silver
Silver
Posts: 549
Joined: Mon Jan 26, 2015 11:02 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#7

Post by menem »

ลบข้อมูลในเซล E1
แล้วป้อนสูตรใน B2
=WORKDAY(A2,2,E:E)

ส่วน Cell อื่น ๆ ที่เป็นวันที่ ให้เปลี่ยนให้เป็นวันที่จริง ๆ ก่อนด้วยครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#9

Post by DhitiBank »

ลองแนบตัวอย่างไฟล์ที่ทำแล้วมาดูได้ไหมครับ อาจารย์และเพื่อนๆ ที่เข้ามาดูจะได้ช่วยแนะนำได้ตรงจุดครับ
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#10

Post by ichinisan »

ลองแล้วค่ะแต่ติดปัญหาตรงที่มี วันเสาร์ ทำงาน วันที่10sep ด้วยค่ะ เช่น รับ 09sep ระบบจะคำนวณเป็น ส่งคืน 13sep แต่จริงๆแล้ว ต้องคืน 12sep ค่ะ เพราะเสาร์ทำงาน
ปล.ที่บริษัท block internet ค่ะเลยแนบตัวอย่างไปไม่ได้ ก่อนหน้าทำผ่าน app มือถือ เลยคีย์วันที่จริงไม่ได้ค่ะ ต้องขอความกรุณาด้วยค่ะ ขอบคุณค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 30917
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#11

Post by snasui »

:D เอาไว้สะดวกแล้วค่อยทำตัวอย่างมาดูกัน จะได้สะดวกในการทำความเข้าใจครับ
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#13

Post by DhitiBank »

ถ้าหากจำเป็นต้องส่งจากมือถือ คุณ ichinisan ก็สามารถคีย์วันที่ให้เป็นวันที่จริงๆ จากในแอปได้นะครับ แค่ต้องคีย์ในรูปแบบวันที่ครับ ที่คิดว่าสะดวกสุดก็น่าจะรูปแบบนี้คือ
d/m/yyyy

คั่นแต่ละส่วนด้วย "/" ครับ เช่น วันที่ 10 มกราคม 2016
ก็คีย์

10/1/2016

ลงไปตรงๆ เลยครับ (แต่บางครั้งอาจต้องคีย์เดือนขึ้นก่อน เช่น 1/10/2016 แล้วแต่การตั้งค่าพื้นฐานของมือถือครับ) อย่ากังวลว่าจะต้องคีย์เหมือนกับที่เห็น เพราะการแสดงผลเราสามารถตั้งค่าภายหลังได้จากเมนู Format cell ครับ

ไม่ทราบว่าใช้แอปอะไรครับ ผมแนะนำ WPS office เผื่อเป็นทางเลือก มีทั้งในแอนดรอยด์และ IOS ครับ หลายๆ ครั้งผมก็ส่งคำถามโดยสร้างไฟล์จากแอปนี้
tmp_3896--558168826.png
:) ภาพจากแอปครับ
You do not have the required permissions to view the files attached to this post.
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#14

Post by ichinisan »

ใช้ Polaris office ค่ะ จะลองดูคะ ขอบคุณค่ะ
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#15

Post by ichinisan »

หนูลองทำตามคำแนะนำ มาใหม่แล้วพร้อมทั้งแนบไฟล์ตัวอย่างของปัญหามาให้อาจารย์ช่วยดูแล้วค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#16

Post by DhitiBank »

ลองแบบนี้ครับ

B2
=WORKDAY.INTL(A2,2,11,$E$2:$E$7)
Enter >> คัดลอกลงล่างครับ
ichinisan
Member
Member
Posts: 43
Joined: Tue Feb 28, 2012 9:24 pm

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#17

Post by ichinisan »

ไม่ทราบว่าเกิดอะไรขึ้นค่ะ ทำใน appมือถือค่าได้ตามต้องการ แต่มาทำที่เครื่อง บริษัทขึ้น error name ค่ะที่บริษัทใช้ win7 office2007 ค่ะต้องไปตั้งค่าเพิ่มเติมหรือเปล่าค่ะ ตัวอย่าง ตามรูปภาพค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#18

Post by DhitiBank »

ที่ขึ้นค่าผิดพลาดแบบนั้นเพราะ Excel 2007 ไม่มีฟังก์ชั่น WORKDAY.INTL ครับ

ลองแบบนี้ครับ
B2

=A2+2+IF(SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+2)))),SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+3)))))

Enter >> คัดลอกลงล่างครับ

แต่ผมว่าหากเจอบางกรณี สูตรนี้จะคำนวณผิดพลาดแน่ครับ เช่น กรณีหยุดยาวติดกันหลายวัน
หรือศึกษาข้อมูลเพิ่มเติมที่ลิ้งค์ด้านล่างนี้ได้ครับ มีสูตรอื่นๆ ด้วย โดยเฉพาะอย่างยิ่งการใช้ VBA ซึ่งแน่นอนกว่า
http://www.cpearson.com/excel/BetterNetWorkDays.aspx
User avatar
DhitiBank
Gold
Gold
Posts: 1676
Joined: Mon Oct 15, 2012 12:07 am

Re: ต้องการให้แสดง วันที่กำหนดส่งของ ภายใน 2 วันโดย ไม่นับรวมวันหยุด

#20

Post by DhitiBank »

ปรับสูตรเพิ่มครับ เผื่อกรณีหยุดยาวต่อเนื่อง 7 วัน ไม่น่ามีหยุดยาวเกินกว่านี้แล้ว (หรือเปล่าครับ)

B2

=A2+2+IF(SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+2))))=0,0,
IF(COUNTIF($E$2:$E$7,A2+3)=0,SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+2)))),
IF(COUNTIF($E$2:$E$7,A2+4)=0,SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+3)))),
IF(COUNTIF($E$2:$E$7,A2+5)=0,SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+4)))),
IF(COUNTIF($E$2:$E$7,A2+6)=0,SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+5)))),
IF(COUNTIF($E$2:$E$7,A2+7)=0,SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+6)))),SUMPRODUCT(COUNTIF($E$2:$E$7,ROW(INDIRECT(A2&":"&A2+6))))))))))


Enter >> คัดลอกลงล่างครับ

ข้อแม้คือ วันหยุดในคอลัมน์ E จะต้องเป็นวันหยุดบริษัททุกวันรวมวันอาทิตย์ด้วยนะครับ
2016-09-16 09_43_19-Microsoft Excel - กำหนดส่งงาน new.xlsx.png
You do not have the required permissions to view the files attached to this post.
Post Reply