Page 1 of 1

ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 1:18 pm
by tigerwit
จากไฟล์ที่แนบมา D5 ถึง D29 คือคะแนนดิบที่ครูมี จากคะแนนเต็ม(รวมระหว่างภาค) 70 คะแนน
ต้องการนำคะแนนดิบนั้นมา กระจายลงในคลอลัมน์ E ถึง H และ L ถึง O
โดยให้สัดส่วนคะแนนที่กระจายไม่เกินที่กำหนดไว้ (ในเซล E4 ถึง O4)
จึงเอาคะแนนดิบตั้งหารด้วยคะแนนรวมระหว่างภาค แล้วคูณด้วย คะแนนสัดส่วน

สิ่งที่ต้องการคือ ต้องการให้ผลของการกระจายคะแนน เป็นเลขจำนวนเต็ม ไม่มีทศนิยม และเมื่อรวมกันแล้ว จะต้องเท่ากับคะแนนดิบ
ต้องเขียนสูตรอย่างไรครับ

Re: ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 3:24 pm
by norkaz
...

ลองปรับไปแบบนี้

ก่อนกลางภาค ใช้สูตรเดิม

หลังกลางภาค ปรับเป็น

L5:Nxx
=ROUNDUP(($D5-$I5)/4,0)

O5
=D5-I5-SUM(L5:N5)

เพื่อนสมาชิกกรุณา คลิกโฆษณาหน้าเพจ เพื่อเป็นการช่วยกันสนับสนุนฟอรั่มครับ

Norkaz

Re: ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 5:39 pm
by tigerwit
ขอบคุณครับ
กรณีที่มีคะแนนสอบกลางภาคเพิ่มเข้ามา
สูตรที่แนะนำจะใช้ไม่ได้ครับ
และกรณีที่คะแนนสอบหลังกลางภาคมีครั้งใดครั้งหนึ่งว่างไม่มีคะแนน สูตรจะใช้ไม่ได้ เช่นกัน

Re: ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 6:08 pm
by norkaz
...

ต้องการคำตอบแบบใด ช่วยใส่มาให้ครอบคลุม และ ช่วยแสดงคำตอบที่ต้องการ มาด้วยครับ

Norkaz

Re: ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 8:11 pm
by tigerwit
คะแนนเต็มของแต่ละช่องที่จะกระจาย ในแถวที่ 4 (E4:H4 ,J4 ,L4:O4) (ครั้งที่ 1 - ครั้งที่ 9 และกลางภาค)
จะเปลี่ยนไปแล้วแต่ว่า ครูจะกำหนด บางช่องอาจเป็น 5 10 15 หรือ ไม่มีก็ได้ และเมื่อรวมกันแล้ว จะได้เกิน 80
คะแนนที่อยู่ใน D5 คือคะแนนดิบ ที่ต้องการกระจายลงในช่อง E5 F5 G5 H5 J5 L5 M5 N5 O5
ไม่ให้แต่ละช่องเกิน คะแนนเต็มในแถว 4 (E4 F4 G4 H4 J4 L4 M4 N4 O4)
เมื่อกระจายแล้วให้เป็นเลขจำนวนเต็ม และเมื่อรวมที่กระจายแล้ว จะต้องเท่ากับคะแนนเดิบ

Re: ต้องการให้จำนวนที่มีทศนิยมเป็นจำนวนเต็ม และเมื่อรวมกันแล้วให้เท่ากับตัวเลขที่กำหนดไว้

Posted: Mon Apr 10, 2023 11:50 pm
by norkaz
...

โจทย์ลักษณะนี้ เพื่อให้ง่ายควรกำหนด คะแนนที่แน่นอนในแต่ละครั้ง ไว้ก่อน
แล้วใช้การเฉลี่ยไปตรงๆ ตาม จำนวนครั้งและคะแนน ในแต่ละช่วง
แล้วสร้างคอลัมน์ เช็คผลต่าง แล้วนำผลต่างที่ได้ ไปปรับแบบ manual อีกรอบ

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

การเขียนสูตรลักษณะนั้น มักไม่มีรูปแบบที่แน่นอนตายตัว
ต้องปรับไปตามเงื่อนไข ตามโจทย์ที่กำหนด ซึ่งในการทำงานจริง ไม่แนะนำให้ใช้วิธีนี้

จากโจทย์ที่สอบถามมา ลองปรับไป แบบนี้

E5
=IF(E$4="",0,MIN(E$4,ROUNDUP($D5/$I$3*E$4,0)))

F5:Gxx
=IF(F$4="",0,IF(SUM($E5:E5)>=$D5,0,MIN(F$4,ROUNDUP($D5/$I$3*F$4,0))))

H5
=IF(H$4="",0,MAX(0,MIN(H$4,D5-SUM(E5:G5))))

J5
=IF($D5<=$I$3,0,MIN($J$4,D5-$I$3))

L5
=IF(L$4="",0,MIN(L$4,ROUNDUP(($D5-$I5-$J5)/$P$3*L$4,0)))

M5
=IF(M$4="",0,MIN(M$4,ROUNDDOWN(($D5-$I5-$J5)/$P$3*M$4,0)))

N5
=IF(N$4="",0,ROUNDUP(IF(N$4>0,D5-SUM(I5:M5))*N$4/(N$4+O$4),0))



เพื่อนสมาชิกกรุณา คลิกโฆษณาหน้าเพจ เพื่อเป็นการช่วยกันสนับสนุนฟอรั่มครับ

Norkaz