การแสดง จำนวน สัปดาห์ รายเดือน สำหรับวันที่ที่กำหนด
การตั้งค่าสูตรใน Kintone จะช่วยให้คุณได้รับหมายเลขสัปดาห์รายเดือน ซึ่งจะเริ่มใหม่จาก 1 ในช่วงต้นเดือนของทุกเดือน สำหรับวันที่คุณป้อน
บทความนี้แสดงตัวอย่างการตั้งค่าพร้อมสูตร
การตระเตรียม
เปิดแท็บ แบบฟอร์ม ใน การตั้งค่าแอปพลิเคชัน และวางฟิลด์หกฟิลด์ต่อไปนี้บนฟอร์มแอป
- (1) ช่อง “วันที่”
- (2) ช่อง "ผลคำนวณ"
- (3) ช่อง "ผลคำนวณ"
- (4) ช่อง “ข้อความ”
- (5) ช่อง "ผลคำนวณ"
- (6) ช่อง “ข้อความ”
การตั้งค่า ของแต่ละฟิลด์
เปิดหน้าจอการตั้งค่าของแต่ละฟิลด์ที่คุณวางไว้บนแบบฟอร์มแอป และตั้งชื่อฟิลด์ รหัสฟิลด์ และสูตร
ภาพรวมของรหัสภาคสนาม
การตั้งค่าแต่ละฟิลด์ตามที่อธิบายไว้ด้านล่างจะทำให้ฟิลด์ (6) แสดงหมายเลขสัปดาห์รายเดือนสำหรับวันที่ป้อนในฟิลด์ (1)
ฟิลด์ (2) ถึง (5) ใช้สำหรับการคำนวณระดับกลาง
(1) ช่อง “วันที่”
ฟิลด์นี้ใช้สำหรับป้อนวันที่ที่คุณต้องการรับหมายเลขสัปดาห์รายเดือน
- ชื่อฟิลด์: วันที่
- รหัสฟิลด์ : วันที่
คุณไม่จำเป็นต้องกำหนดสูตรสำหรับฟิลด์นี้
(2) ช่อง "ผลคำนวณ"
ฟิลด์นี้จะแสดงส่วนวันของวันที่ที่ป้อนในฟิลด์ (1) (จำนวน วัน ที่ผ่านไปนับตั้งแต่วันแรกของเดือน)
-
ชื่อฟิลด์: วันที่ (ส่วนของวัน)
-
รหัสฟิลด์ : Date_Day_part
-
สูตร: กำหนดสูตรต่อไปนี้:
DATE_FORMAT(Date, "d", "Asia/Tokyo")
(3) ช่อง "ผลคำนวณ"
ฟิลด์นี้จะคำนวณวันแรกของเดือนในรูปแบบเวลา UNIX (ค่าตัวเลข) ตามวันที่ป้อนในฟิลด์ (1)
-
ชื่อฟิลด์: วันแรกของเดือน
-
รหัสฟิลด์ : วันแรกของเดือน
-
สูตร: กำหนดสูตรต่อไปนี้:
Date-((Date_Day_part-1)*60*60*24)
(4) ช่อง “ข้อความ”
ฟิลด์นี้จะคำนวณวันแรกของสัปดาห์ของเดือนโดยอิงจากวันแรกของเดือนที่คำนวณได้ในฟิลด์ (3)
-
ชื่อฟิลด์: วันแรกของสัปดาห์ของเดือน
-
รหัสฟิลด์ : วันแรกของสัปดาห์ของเดือน
-
สูตร: เลือก คำนวณอัตโนมัติ และตั้งค่าสูตรต่อไปนี้
IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 0) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 0) / 7 ) , 0) = 0 , "Thursday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 1) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 1) / 7 ) , 0) = 0 , Friday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 2) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 2) / 7 ) , 0) = 0 , "Saturday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 3) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 3) / 7 ) , 0) = 0 , "Sunday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 4) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 4) / 7 ) , 0) = 0 , "Monday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 5) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 5) / 7 ) , 0) = 0 , "Tuesday", IF( ( ( (First_day_of_the_month / 60 / 60 / 24) - 6) / 7 ) - ROUNDUP(( ( (First_day_of_the_month / 60 / 60 / 24) - 6) / 7 ) , 0) = 0 , "Wednesday","N/A" ) ) ) ) ) ) )
(5) ช่อง "ผลคำนวณ"
ขึ้นอยู่กับวันแรกของสัปดาห์ของเดือนที่คำนวณในฟิลด์ (4) ฟิลด์นี้จะคำนวณหมายเลขสัปดาห์รายเดือนสำหรับวันที่ที่แสดงในฟิลด์ (2)
-
ชื่อฟิลด์: หมายเลขสัปดาห์ รายเดือน
-
รหัสฟิลด์ : Monthly_week_number
-
สูตร: กำหนดสูตรต่อไปนี้ ตัวอย่างเช่น สูตรนี้ถือว่าวันเริ่มต้นสัปดาห์คือ วันอาทิตย์
IF(First_day_of_week_of_the_month="Sunday", IF(Date_Day_part<=7, 1, IF(ROUNDUP((Date_Day_part-7)/7)-ROUNDDOWN((Date_Day_part-7)/7)=0, ROUNDDOWN((Date_Day_part-7)/7)+1, ROUNDDOWN((Date_Day_part-7)/7)+2)), IF(First_day_of_week_of_the_month="Monday", IF(Date_Day_part<=6, 1, IF(ROUNDUP((Date_Day_part-6)/7)-ROUNDDOWN((Date_Day_part-6)/7)=0, ROUNDDOWN((Date_Day_part-6)/7)+1, ROUNDDOWN((Date_Day_part-6)/7)+2)), IF(First_day_of_week_of_the_month="Tuesday", IF(Date_Day_part<=5, 1, IF(ROUNDUP((Date_Day_part-5)/7)-ROUNDDOWN((Date_Day_part-5)/7)=0, ROUNDDOWN((Date_Day_part-5)/7)+1, ROUNDDOWN((Date_Day_part-5)/7)+2)), IF(First_day_of_week_of_the_month="Wednesday", IF(Date_Day_part<=4, 1, IF(ROUNDUP((Date_Day_part-4)/7)-ROUNDDOWN((Date_Day_part-4)/7)=0, ROUNDDOWN((Date_Day_part-4)/7)+1, ROUNDDOWN((Date_Day_part-4)/7)+2)), IF(First_day_of_week_of_the_month="Thursday", IF(Date_Day_part<=3, 1, IF(ROUNDUP((Date_Day_part-3)/7)-ROUNDDOWN((Date_Day_part-3)/7)=0, ROUNDDOWN((Date_Day_part-3)/7)+1, ROUNDDOWN((Date_Day_part-3)/7)+2)), IF(First_day_of_week_of_the_month="Friday", IF(Date_Day_part<=2, 1, IF(ROUNDUP((Date_Day_part-2)/7)-ROUNDDOWN((Date_Day_part-2)/7)=0, ROUNDDOWN((Date_Day_part-2)/7)+1, ROUNDDOWN((Date_Day_part-2)/7)+2)), IF(First_day_of_week_of_the_month="Saturday", IF(Date_Day_part<=1, 1, IF(ROUNDUP((Date_Day_part-1)/7)-ROUNDDOWN((Date_Day_part-1)/7)=0, ROUNDDOWN((Date_Day_part-1)/7)+1, ROUNDDOWN((Date_Day_part-1)/7)+2)), "N/A" ) ) ) ) ) ) )
หากคุณต้องการใช้ วันจันทร์ เป็นจุดเริ่มต้นของสัปดาห์ ให้แทนที่ "วันอาทิตย์" ในส่วนต่อไปนี้ของสูตรด้วย "วันจันทร์": First_day_of_week_of_the_month=" วันอาทิตย์" ในทำนองเดียวกัน ให้แทนที่แต่ละ วัน ในสัปดาห์ในสูตรนี้ด้วยวันต่อไปนี้
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับสูตรนี้ โปรดดู คำอธิบายสูตรสำหรับฟิลด์ (5)
(6) ช่อง “ข้อความ”
จากจำนวนสัปดาห์รายเดือนที่คำนวณในฟิลด์ (5) ฟิลด์นี้จะแสดงจำนวนสัปดาห์รายเดือนสำหรับวันที่ป้อนในฟิลด์ (1) ในรูปแบบต่อไปนี้: สัปดาห์ที่ N ของ MMMM YYYY
-
ชื่อฟิลด์: หมายเลขสัปดาห์ รายเดือน (รูปแบบเต็ม)
-
รหัสฟิลด์ : Monthly_week_number_full
-
สูตร: เลือก คำนวณอัตโนมัติ และตั้งค่าสูตรต่อไปนี้
"Week "&Monthly_week_number&" of "&DATE_FORMAT(Date, "MMMM YYYY", "Asia/Tokyo")
คำอธิบายสูตรของฟิลด์ (5)
ขึ้นอยู่กับวันแรกของสัปดาห์ของเดือนที่คำนวณในฟิลด์ (4) ฟิลด์ (5) จะคำนวณหมายเลขสัปดาห์รายเดือนสำหรับวันที่โดยใช้ส่วนของวันที่แสดงในฟิลด์ (2)
เนื่องจากสูตรสำหรับฟิลด์ (5) ใช้ฟังก์ชัน IF กระแสการคำนวณจึงแยกออกเป็นหลายสาขาขึ้นอยู่กับเงื่อนไขที่ตรงตามเงื่อนไข
จุดแยกที่ 1: ส่วนของวันมีขนาดใหญ่กว่าจำนวน วัน ในสัปดาห์แรกหรือไม่?
จำนวน วัน ในสัปดาห์แรกของเดือนจะพิจารณาจากวันแรกของสัปดาห์ของเดือน
ตัวอย่างเช่น สูตรที่อธิบายไว้ในบทความนี้ถือว่าจุดเริ่มต้นของสัปดาห์คือ วันอาทิตย์
- ตัวอย่าง: หากคุณใช้ วันอาทิตย์ เป็นจุดเริ่มต้นของสัปดาห์
- หากวันแรกของสัปดาห์ของเดือนเป็น วันจันทร์ สัปดาห์แรกของเดือนจะประกอบด้วย 6 วัน
- หากวันแรกของสัปดาห์ของเดือนเป็น วันอังคาร สัปดาห์แรกของเดือนจะประกอบด้วย 5 วัน
โดยการคํานวณว่าตัวเลข (ส่วนวัน) ที่แสดงในฟิลด์ (2) มากกว่าจํานวน วัน ในสัปดาห์แรกของเดือนหรือไม่ ฟิลด์ (5) จะกําหนดว่าวันที่ที่กําหนดอยู่ในสัปดาห์แรกหรือใน สัปดาห์ ที่สองหรือถัดไป
- หากส่วนของวันเท่ากับหรือน้อยกว่าจำนวน วัน ในสัปดาห์แรกของเดือน
วันที่ได้รับการยอมรับว่าเป็นสัปดาห์แรกของเดือน
ช่อง (5) จะแสดง "1" ซึ่งหมายถึงสัปดาห์แรก - หากส่วนของวันมีขนาดใหญ่กว่าจํานวน วัน ในสัปดาห์แรกของเดือน
วันที่ได้รับการยอมรับว่าเป็น สัปดาห์ ที่สองหรือถัดไปของเดือน
ในกรณีนี้ การคํานวณจะดําเนินต่อไป การคํานวณที่ตามมาจะระบุว่าวันที่อยู่ในสัปดาห์ใดโดยเฉพาะ
จุดสาขา 2: ถ้าวันที่อยู่ใน สัปดาห์ ที่สองหรือถัดไป วันที่อยู่ในสัปดาห์ใด?
หากส่วนของวันมีขนาดใหญ่กว่าจำนวน วัน ในสัปดาห์แรกของเดือน สูตรจะทำการคำนวณเพื่อระบุว่าวันที่นั้นอยู่ในสัปดาห์ใดโดยเฉพาะ
ประการแรก จำนวน วัน ที่ผ่านไปตั้งแต่วันสุดท้ายของสัปดาห์แรกจะคำนวณโดยการลบจำนวน วัน ในสัปดาห์แรกออกจากจำนวน (ส่วนของวัน) ที่แสดงในช่อง (2)
จากนั้นผลลัพธ์การคำนวณจะถูกหารด้วย 7 ซึ่งเป็นจำนวน วัน ในหนึ่งสัปดาห์
ถ้าไม่มีเศษเหลือจากการแบ่ง
ตัวเลขสัปดาห์สำหรับวันที่เป็นผลหารบวก 1 (สัปดาห์) ซึ่งแสดงถึงสัปดาห์แรกของเดือน
ฟิลด์ (5) แสดงค่าที่ได้จากการบวก 1 ลงในผลหาร
ตัวอย่าง: หากวันแรกของเดือนเป็นวันที่ วันจันทร์ และวันที่ป้อนคือวันที่ 13
ถ้าวันแรกของเดือนเป็น วันจันทร์ สัปดาห์แรกของเดือนประกอบด้วย 6 วัน
13 (ส่วนของวันของวันที่กําหนด) ลบ 6 (จํานวน วัน ในสัปดาห์แรกของเดือน) คือ 7 นี่บ่งชี้ว่า 7 วัน ผ่านไปตั้งแต่วันสุดท้ายของสัปดาห์แรก
7 หารด้วย 7 (จํานวน วัน ในหนึ่งสัปดาห์) คือ 1 (สัปดาห์) โดยไม่มีเศษ
จากนั้น 1 (สัปดาห์) ซึ่งแสดงถึงสัปดาห์แรกของเดือนจะถูกเพิ่มลงในผลหารของการคํานวณข้างต้น 1 (สัปดาห์) ผลลัพธ์คือ 2 (สัปดาห์) ซึ่งบอกคุณว่าวันที่ที่กําหนดอยู่ในสัปดาห์ที่สองของเดือน
หากมีเศษเหลือจากการแบ่ง
หมายเลขสัปดาห์สําหรับวันที่คือผลหารบวก 2 (สัปดาห์) ซึ่งแสดงถึงสัปดาห์แรกของเดือนบวกอีกหนึ่งสัปดาห์สําหรับการครอบคลุม วัน ที่เหลือ
ฟิลด์ (5) แสดงค่าที่ได้รับจากการบวก 2 ให้กับผลหาร
ตัวอย่าง: หากวันแรกของเดือนเป็น วันจันทร์ และวันที่ป้อนคือวันที่ 15
ถ้าวันแรกของเดือนเป็น วันจันทร์ สัปดาห์แรกของเดือนประกอบด้วย 6 วัน
15 (ส่วนวันของวันที่กําหนด) ลบ 6 (จํานวน วัน ในสัปดาห์แรกของเดือน) คือ 9 นี่บ่งชี้ว่า 9 วัน ผ่านไปตั้งแต่วันสุดท้ายของสัปดาห์แรก
9 หารด้วย 7 (จํานวน วัน ในหนึ่งสัปดาห์) คือ 1 (สัปดาห์) โดยมีส่วนที่เหลือ 2 (วัน)
จากนั้น 2 (สัปดาห์) ซึ่งแสดงถึงสัปดาห์แรกของเดือนบวกอีกหนึ่งสัปดาห์สําหรับการครอบคลุม วัน ที่เหลือจะถูกเพิ่มลงในผลหารของการคํานวณข้างต้น 1 (สัปดาห์) ผลลัพธ์คือ 3 (สัปดาห์) ซึ่งบอกคุณว่าวันที่กําหนดอยู่ในสัปดาห์ที่สามของเดือน
อ้างอิง: การใช้ฟิลด์ที่มีฟีเจอร์แผนภูมิ
หากต้องการรวมข้อมูลบันทึกตามหมายเลขสัปดาห์รายเดือน ให้ระบุฟิลด์ (6) (ฟิลด์ที่แสดงหมายเลขสัปดาห์รายเดือนสำหรับวันที่กำหนด) ซึ่งคุณได้ตั้งค่าไว้ในส่วนต่างๆ ข้างต้น ในส่วนจัด จัดกลุ่มตาม ในการตั้งค่า กราฟ
-
ตัวอย่างการตั้งค่า กราฟ
-
ตัวอย่างผลรวม
นอกจากนี้ หากคุณใส่ช่อง "วันที่" ไว้ในแบบฟอร์มแอปของคุณ คุณสามารถใช้คุณลักษณะแผนภูมิเพื่อรวมข้อมูลบันทึกตามหมายเลขสัปดาห์ในแต่ละปีได้
สามารถทำได้โดยระบุฟิลด์ "วันที่" และ ตามสัปดาห์ ในส่วน จัดกลุ่มตาม ในการตั้งค่า กราฟ
ตัวอย่างเช่น หากค่าในฟิลด์ "วันที่" คือ "30 มีนาคม 2022" ข้อมูลบันทึกจะถูกรวมเป็น "2022 13" เนื่องจากวันที่อยู่ในสัปดาห์ที่ 13 ของปี 2022
อ้างอิง: เทมเพลตแอป
คุณสามารถดาวน์โหลดเทมเพลตแอปพร้อมสูตรที่กำหนดไว้ล่วงหน้าและการตั้งค่า กราฟ ได้จากลิงก์ด้านล่าง
เทมเพลตแอป "what_week_en.zip"
คลิกลิงก์เพื่อดาวน์โหลดไฟล์เทมเพลต (zip) และนำเข้าสู่ Kintone โดยไม่ต้องแตกไฟล์