Page 1 of 1

ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Sun Sep 03, 2023 3:38 pm
by Jong1978
ต้องการ นับจำนวนเดือนจาก Start Date กับ Date ที่เก่าสุด ระหว่าง" End Date หรือ Report Date"

จากข้อมูล ต้องการสูตร นับจำนวนเดือน แบบมีเงื่อนไข ตรวจสอบ ว่าจะใช้ Date ไหนในการคำนวณ ระยะเวลา

ตัวอย่าง จากข้อมูล Comumn A Start Date เป็นระยะเวลาตั้งต้น
โดยก่อนจะนับ ต้องการตรวจสอบเงื่อนไข ระหว่าง" End Date หรือ Report Date"

โดยใช้หลักพิจาณาว่า Date ใดเก่ากว่าให้ใช้ Date นั้น ในการคำนวณ ระยะของปลายทาง
หากเปรียบเทียบแล้วทั้ง 2 Date มีค่า เท่ากัน ให้ยึดการคำนวณจาก End Date ครับ


ขอบคุณครับ

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Sun Sep 03, 2023 10:15 pm
by norkaz
...

ลบทุกอย่างที่ คอลัมน์ D และ E ออกไปก่อน

E2
=MAP(B2:B8,C2:C8,LAMBDA(x,y,MIN(x,y)))

D2
=DATEDIF(A2:A8,E2:E8,"M")


**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Sun Sep 03, 2023 11:19 pm
by norkaz
..

หรือ
ลบทุกอย่างที่ คอลัมน์ D และ E ออกไปก่อน

D2

=LET(a,A2:A8,b,B2:B8,c,C2:C8,m,MAP(b,c,LAMBDA(a,b,MIN(a,b))),HSTACK(DATEDIF(a,m,"M"),m))

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Mon Sep 04, 2023 1:06 pm
by Jong1978
ขอบคุณมาก ๆ เลยครับ ขอสอบถามเพิ่มเติม นะครับ

1.ได้นำสูตรมาลองในไฟล์งานจริง แล้วขึ้น SPILL ไปเจอใน Google ให้กด Crtl+Shift+Enter อันนี้ ทำถูกแล้วใช่ไหมครับ

2.จากข้อมูลจริงไปเจอ เงื่อนไข เพิ่มเติม เลยขอทำตัวอย่างไว้ที่ Row 9 หากพบว่า Date ที่เก่ากว่า มีค่าน้อยกว่า Start Date ให้ค่าที่ออกมา เป็น จำนวนเดือน แบบติดลบ ได้ไหมครับ ( ตอนนี้สูตรออกเป็นค่า !NUM )

ขอบคุณครับ click ads สนับสนุน เรียบร้อยครับ

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Mon Sep 04, 2023 1:07 pm
by Jong1978
สูตรที่แนะนำมา ผมใช้ จากสูตรด้านล่างนี้ นะครับ

ลบทุกอย่างที่ คอลัมน์ D และ E ออกไปก่อน

E2
=MAP(B2:B8,C2:C8,LAMBDA(x,y,MIN(x,y)))

D2
=DATEDIF(A2:A8,E2:E8,"M")

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Mon Sep 04, 2023 3:25 pm
by Xcelvba
การที่สูตรขึ้น #SPILL แสดงว่ามีข้อมูลขวางในช่วงของ Array อยู่ครับ ลบข้อมูลในช่วงออกให้หมดครับ

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Mon Sep 04, 2023 3:55 pm
by norkaz
...

Spill คือการแสดงค่าในชุด Array ออกมาให้เห็นด้วยตา เป็นเรื่องปกติของ Excel 365

แต่ถ้าไปเจอคำว่า Spill แปลว่า มีอะไรไปขวางทาง ชุดข้อมูลที่จะ แสดงออกมา ต้องลบข้อมูล ที่เกะกะ นั้นออกไปก่อน จึงมองเห็นค่าที่จะแสดงออกมาครับ

** ส่วนข้อ 2 ค่าที่ได้ ควรติดลบ 11 ไม่ใช่ ลบ12
ลองปรับสูตรไปตามนี้ครับ

D2
=IF(A2:A9<E2:E9,DATEDIF(A2:A9,E2:E9,"M"),-DATEDIF(E2:E9,A2:A9,"M"))

E2
=MAP(B2:B9,C2:C9,LAMBDA(x,y,MIN(x,y)))

**สนับสนุนฟอรั่ม กรุณาคลิกโฆษณาที่หน้าเพจ***

แมวใหญ่ Bigcat9

Re: ต้องการ นับจำนวนเดือน จาก Start Date กับ Date ที่เก่าสุด

Posted: Mon Sep 04, 2023 5:42 pm
by Jong1978
สูตรสามารถใช้งานได้ปกติครับ ขอบคุณครับ