Page 1 of 1

สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Fri May 20, 2022 11:34 am
by Xcelvba
จ่ายเงินทุกๆเดือน โดยมีเงื่อนไขดังนี้ ครับ
-จะจ่ายเงิน ในวันอังคาร ทุกๆ สัปดาห์ที่ 2 ของเดือน

ไฟล์ที่แนบให้เป็นการจ่ายเงินทุกๆ วัน (ตามเงื่อนไข) เลยอยากสอบถามว่า ถ้าจะให้คำนวณ จาก

จ่ายเงินทุกๆ วันอังคาร เปลี่ยนเป็น ทุกๆ วันอังคาร ที่เป็น สัปดาห์ที่ 2 ของเดือน จะเขียนสูตรอย่างไรครับ
ขอบคุณครับ

Re: สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Sat May 21, 2022 5:22 am
by snasui
:D ช่วยยกตัวอย่างโดยคีย์คำตอบที่ถูกต้องลงมาในไฟล์พร้อมอธิบายว่าค่านั้น ๆ มีวิธีการคิดอย่างไรจะได้เข้าถึงปัญหาโดยไวครับ

Re: สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Sat May 21, 2022 8:29 am
by Xcelvba
snasui wrote: Sat May 21, 2022 5:22 am :D ช่วยยกตัวอย่างโดยคีย์คำตอบที่ถูกต้องลงมาในไฟล์พร้อมอธิบายว่าค่านั้น ๆ มีวิธีการคิดอย่างไรจะได้เข้าถึงปัญหาโดยไวครับ
นี่ครับอาจารย์
ผมทำตัวอย่างคำตอบไว้ 3 เดือนครับ

Re: สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Sat May 21, 2022 12:44 pm
by snasui
:D ตัวอย่างสูตรที่ C2 ครับ

=($B2=AGGREGATE(15,6,ROW(INDIRECT(EOMONTH(B2,-1)+1&":"&EOMONTH(B2,0)))/(WEEKDAY(ROW(INDIRECT(EOMONTH(B2,-1)+1&":"&EOMONTH(B2,0))),2)=2),2))*INDEX($I$5:$L$5,MATCH(C$1,$I$3:$L$3,0))

Enter > Copy ลงด้านล่าง > ปรับใช้กับคอลัมน์ที่เหลือ

เลข 2 สีน้ำเงิน คือ อังคาร (ถ้าพุธแก้เป็น 3 ถ้าพฤหัสแก้เป็น 4 เป็นต้น)
เลข 2 สีแดงคือ ที่ 2 (ถ้าที่ 3 แก้เป็น 3 เป็นต้น)

ที่สำคัญ วันที่ในคอลัมน์ B จะต้องเป็นวันที่แบบคริสตศักราช ไม่ใช่แบบพุทธศักราช กรุณาแก้ใหม่ ไม่เช่นนั้นมีโอกาสที่คำตอบจะไม่ถูกต้องครับ

Re: สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Sat May 21, 2022 3:41 pm
by Xcelvba
snasui wrote: Sat May 21, 2022 12:44 pm :D ตัวอย่างสูตรที่ C2 ครับ

=($B2=AGGREGATE(15,6,ROW(INDIRECT(EOMONTH(B2,-1)+1&":"&EOMONTH(B2,0)))/(WEEKDAY(ROW(INDIRECT(EOMONTH(B2,-1)+1&":"&EOMONTH(B2,0))),2)=2),2))*INDEX($I$5:$L$5,MATCH(C$1,$I$3:$L$3,0))

Enter > Copy ลงด้านล่าง > ปรับใช้กับคอลัมน์ที่เหลือ

เลข 2 สีน้ำเงิน คือ อังคาร (ถ้าพุธแก้เป็น 3 ถ้าพฤหัสแก้เป็น 4 เป็นต้น)
เลข 2 สีแดงคือ ที่ 2 (ถ้าที่ 3 แก้เป็น 3 เป็นต้น)

ที่สำคัญ วันที่ในคอลัมน์ B จะต้องเป็นวันที่แบบคริสตศักราช ไม่ใช่แบบพุทธศักราช กรุณาแก้ใหม่ ไม่เช่นนั้นมีโอกาสที่คำตอบจะไม่ถูกต้องครับ
ขอบคุณครับ อ.
สอบถามเพิ่มเติมครับ ถ้าเราใช้ =text("DDD") ต้องเป็นคริสตศักราช เสมอใช่ไหมครับ ถ้าเราจะแปลง เป็น พุทธศักราช เราต้องใช้ สูตร =Edate(....,543*12) ใช่ไหมครับ

*INDEX($I$5:$L$5,MATCH(C$1,$I$3:$L$3,0))
* คืออะไรครับ

Re: สอบถามหาสูตรการหาวันที่จ่ายเงินทุกเดือน

Posted: Sat May 21, 2022 5:10 pm
by snasui
:D เมื่อทำงานกับวันที่ ควรใช้แบบคริตศักราชเสมอครับ

สำหรับตัวอย่างนี้การแปลงทำได้ด้วยวิธีง่าย ๆ โดยใช้การ Replace (Ctrl+F) โดยช่องบนคีย์ 2565 ช่องล่างคีย์ 2022 > คลิกปุ่ม Replace All
Xcelvba wrote: Sat May 21, 2022 3:41 pm INDEX($I$5:$L$5,MATCH(C$1,$I$3:$L$3,0))
สูตรนี้แปลว่า จากช่วง $I$5:$L$5 ให้นำลำดับที่ที่เป็นผลลัพธ์ของ MATCH(C$1,$I$3:$L$3,0) มาแสดง

หาก MATCH(C$1,$I$3:$L$3,0) ให้ผลลัพธ์เป็น 1 แปลว่า จาก $I$5:$L$5 ให้นำลำดับที่ 1 มาแสดง เช่นนี้เป็นต้นครับ