วันพุธที่ 16 กรกฎาคม พ.ศ. 2557

สูตร Excel หาวันสงกรานต์ประจำปีตรงกับวันไหนบ้าง

สูตร Excel หาวันสงกรานต์ประจำปีตรงกับวันไหนบ้าง สูตร Excel ในวันนี้ เราจะนำเสนอวิธีการหาว่าวันสงกรานต์ในแต่ละปีตรงกับวันอะไรบ้าง...เราท... thumbnail 1 summary
สูตร Excel หาวันสงกรานต์ประจำปีตรงกับวันไหนบ้าง

สูตร Excel ในวันนี้ เราจะนำเสนอวิธีการหาว่าวันสงกรานต์ในแต่ละปีตรงกับวันอะไรบ้าง...เราทราบดีว่าวันสงกรานต์คือวันที่ 13 14 15 และ 16 โดยวันที่ 16 คือวันหยุดชดเชยวันสงกรานต์ แต่เราไม่ทราบว่าวันที่ 13 14 15 16 มันตรงกับวันไหน กล่าวคือ ไม่ทราบว่าตรงกับ วันอาทิตย์ จันทร์ อังคาร พฤหัสบดี วันศุกร์ หรือ วันเสาร์ กันแน่...

วันนี้เราจะใช้ สูตร Excel หาให้ โดยฟังก์ชั่นที่เราจะใช้วันนี้ก็คือ ฟังก์ชั่น Weekdays กับฟังก์ชั่น if สองอย่างนี้ในการตรวจสอบให้

โดยฟังก์ชั่น weekdays มีรูปแบบดังนี้

weekdays(วันเดือนปี,รูปแบบการนับวัน)

โดยในส่วนรูปแบบการนับวันเราจะกล่าวถึงเพียง 3 รูปแบบดังนี้

รูปแบบการนับวัน หรือ Return Type มีค่าเป็นตัวเลข 1,2,3 โดยตัวเลขแต่ละตัวมีความหมายดังนี้

1 ให้ค่าเป็นตัวเลข 1 ถึง 7 (Sunday ถึง Saturday)

2 ให้ค่าเป็นตัวเลข 1 ถึง 7 (Monday ถึง Sunday)

3 ให้ค่าเป็นตัวเลข 0 ถึง 6 (Monday ถึง Sunday)

ถ้าเราไม่ระบุค่า Return Type จะถูกกำหนดเป็น 1

สรุปง่ายๆก็คือว่า ค่า Return Type เป็นค่าที่เอาไว้บอกว่า เราจะนับวันเป็นอย่างไร เช่น จะให้หมายเลข 1 แทน วันอาทิตย์ เลข 2 เป็นวันจันทร์...7 เป็นวันเสาร์ เราก็จะใช้ Return Type = 1 อย่างนี้ เป็นต้น....

เอาละ ตัวอย่างนี้เราจะหาวันสงกรานต์ของทุกปีว่ามันตรงกับวันอะไรบ้างใช่ไหม เราก็สามารถใช้ Weekday นี่แหละช่วยหาให้

เราทราบว่า วันสงกรานต์คือวันที่ 13 14 15 16 ดังนั้นเราก็เริ่มหาจากเดือนนี้ได้เลย

สมมติว่าเราต้องการให้โปรแกรมของเรามีหน้าตาแบบนี้ก็แล้วกัน

 

ให้เราออกแบบหน้าตาโปรแกรมดังภาพ แต่เราจะออกแบบเพิ่มในส่วนของ column b (ซึ่งในภาพไม่มี เพราะเราซ่อนไว้)

โดยให้ทำดังนี้


  1. ที่เซลล์ a1 พิมพ์ว่า ป้อน ค.ศ
  2. ที่เซลล์ A2 ถึง A5 ให้เรา ผสานเซลล์ แล้วปล่อยใส่พื้นสีดำ ตัวหนังสือสีขาว และปล่อยว่างไว้เอาไว้ป้อน ค.ศ
  3. ที่ column b ที่เซลล์ b1 ให้เราพิมพ์ว่า ค่าประจำวัน
  4. ที่เซลล์ b2 ให้พิมพ์ว่า =WEEKDAY("13/4/ " & A2)
  5. ที่เซลล์ b3 ให้พิมพ์ว่า =IF(B2=7,1,IF(B2=6,7,IF(B2=5,6,IF(B2=4,5,IF(B2=3,4,IF(B2=2,3,IF(B2=1,2)))))))
  6. ที่เซลล์ b4 ให้พิมพ์ว่า =IF(B3=7,1,IF(B3=6,7,IF(B3=5,6,IF(B3=4,5,IF(B3=3,4,IF(B3=2,3,IF(B3=1,2)))))))
  7.  ที่เซลล์ b5 ให้พิมพ์ว่า =IF(B4=7,1,IF(B4=6,7,IF(B4=5,6,IF(B4=4,5,IF(B4=3,4,IF(B4=2,3,IF(B4=1,2)))))))
  8. ที่เซลล์ C1 ให้เราพิมพ์ว่า ="วันสงกรานต์ประจำปี" & " " &A2
  9.  ที่เซลล์ C2 ให้เราพิมพ์ว่า
    =IF(B2=1,"อาทิตย์",IF(B2=2,"จันทร์",IF(B2=3,"อังคาร",IF(B2=4,"พุธ",IF(B2=5,"พฤหัสบดี",IF(B2=6,"ศุกร์",IF(B2=7,"เสาร์")))))))
  10. ที่เซลล์ C3 ให้เราพิมพ์ว่า =IF(B3=1,"อาทิตย์",IF(B3=2,"จันทร์",IF(B3=3,"อังคาร",IF(B3=4,"พุธ",IF(B3=5,"พฤหัสบดี",IF(B3=6,"ศุกร์",IF(B3=7,"เสาร์")))))))
  11. ที่เซลล์ C4 ให้เราพิมพ์ว่า
    =IF(B4=1,"อาทิตย์",IF(B4=2,"จันทร์",IF(B4=3,"อังคาร",IF(B4=4,"พุธ",IF(B4=5,"พฤหัสบดี",IF(B4=6,"ศุกร์",IF(B4=7,"เสาร์")))))))
  12. ที่เซลล์ C5 ให้เราพิมพ์ว่า
    =IF(B5=1,"อาทิตย์",IF(B5=2,"จันทร์",IF(B5=3,"อังคาร",IF(B5=4,"พุธ",IF(B5=5,"พฤหัสบดี",IF(B5=6,"ศุกร์",IF(B5=7,"เสาร์")))))))
  13. ที่เซลล์ D1 ให้พิมพ์ว่า วันที่
  14. ที่เซลล์ D2 ให้พิมพ์ 13
  15. ที่เซลล์ D3 ให้พิมพ์ 14
  16. ที่เซลล์ D4 ให้พิมพ์ 15
  17. ที่เซลล์ D5 ให้พิมพ์ 16
เมื่อออกแบบเสร็จรวมถึงใส่สูตรครบหมดแล้ว เราจะได้หน้าตาโปรแกรมที่สำเร็จดังภาพด้านล่าง





แต่เนื่องจากช่อง b เราไม่ต้องการให้มันแสดง เพราะเราเอาไว้แค่ตรวจสอบค่าเท่านั้น...หน้าตาโปรแกรมที่แท้จริงของเราคือ

 



ก็ให้เราเลือกที่ คอลัมน์ b แล้วคลิ้กขวา เลือก hide (ซ่อน) เอาไว้ซะ ดังที่ได้กล่าวไว้นั่นเอง

ให้เราทดลองป้อน ค.ศ ดู อย่างในตัวอย่าง จะเป็นการป้อน ค.ศ 2014 แล้วกด enter ผลที่ได้คือ มันจะแสดงรายการวันสงกรานต์ของปี 2014 มาให้ทั้งหมดรวมถึงวันหยุดชดเชย วันสงกรานต์ด้วย คือวันที่ 16 ซึ่งในปี 2014 นี้คือวันพุธ (วันหยุดชดเชย)

ให้ลองทดสอบการทำงานของโปรแกรมโดยลองป้อน ค.ศ อื่นๆดูว่า โปรแกรมแสดงผลถูกต้องหรือไม่ต่อไป...