Page 1 of 1

ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Thu Mar 05, 2020 1:46 pm
by Yuumi
รบกวนผู้รู้ครับ

- ต้องการใช้สูตรให้หาค่า Min (การส่งน้ำเป็น จน. แกลลอน ของแต่ละ ซัพพลายเออร์)

**โดย แต่ละซัพพลายเออร์ จะมีรอบการวางบิล แตกต่างกัน (ผมใส่สูตรไว้ที่ เซลล์ E:134, E135, และ E136) ซึ่งจะเป็นรอบการ
วางบิล.

** สิ่งที่ต้องการ คือ หากถ้าผมคีย์สูตร ลงไปในช่อง F:134 , G135 แล้ว ให้หา จน.ที่น้อยที่สุด (แต่ต้องมากกว่า 0) นำออกมา 1 ค่า
และ ให้นำค่าที่มาที่สุด ออกมา 1 ค่า ให้แสดงในช่อง F:134 , G134 ตามลำดับ.
(เหมือนตัวอย่าง ในเซลล์ F:135 , G135 ซึ่งทางผมใช้วิธีคีย์มือ ครับ )

**สอบถามเพิ่มเติมครับ ในกรณีสูตร If
พอดีผมใส่เงื่อนไขลงไปว่า if (A4:A99="PTT",SMALL(A4:A99,COUNTIF(A4:A99,0)+1),"")
(หาก เซลล์ A4 - A99 เป็น PTT แล้ว ให้นำค่าที่น้อยที่สุด ตั้งแต่เซลล์ A4:A99 และให้นับค่าตั้งแต่ เซลล์ A4:A99 ที่มากกว่า 0
แต่ถ้าไม่ใช่ ให้แสดงผลเป็นเซลล์ว่าง"

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

ขอบคุณครับ

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Thu Mar 05, 2020 4:15 pm
by Bo_ry
F134
=IFERROR(AGGREGATE(15,6,$F$4:$F$120/($A$4:$A$120=$D134)/($D$4:$D$120="March")/($F$4:$F$120>0),1),0)
หรือ
=MIN(IF($A$4:$A$120=$D134,IF($D$4:$D$120="March",IF($F$4:$F$120,$F$4:$F$120))))
กด Ctrl+Shift+Enter

G134
=IFERROR(AGGREGATE(14,6,$F$4:$F$120/($A$4:$A$120=$D134)/($D$4:$D$120="March"),1),0)
หรือ
=MAX(INDEX(($A$4:$A$120=$D134)*($D$4:$D$120="March")*$F$4:$F$120,))

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Thu Mar 05, 2020 4:40 pm
by Yuumi
ขอบคุณครับ
-เหมือนว่าสูตรจะยังไม่ตรงตามความต้องการครับ
(ซัพพลายเออร์แต่ละเจ้ามีรอบ ระยะ การวางบิล ไม่เหมือนกันครับ
บางเจ้าจะมีการคร่อมเดือนกัน เช่น PTT จะเป็น 25 Feb - 25 March
Burapa จะเป็น 26 Feb - 25 March
ส่วน Waenpech จะเป็น 1-30 หรือ 1-31 ของทุกเดือนครับ)

-พอดีไม่ถนัดสูตรแบบ Array ครับ ..... ผมเลยใช้สูตรข้างล่างที่ให้มานี้แทน
แต่ดูเหมือนว่า สูตรจะครอบคลุม เฉพาะแค่เดือน March อย่างเดียวครับ
ไม่คร่อมเดือน.... ถ้าแบบนี้ทางผมจะใช้สูตรนี้ได้กับ Waenpech ได้เจ้าเดียว ครับ
ส่วนเจ้าอื่นไม่สามารถใช้ได้

MIN(INDEX(($A$4:$A$99=$D134)*($D$4:$D$99="March")*$F$4:$F$99,))

ผิดถูกอย่างไร รบกวนช่วยตรวจสอบ และ แนะนำด้วยครับ

ขอบคุณครับ

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Thu Mar 05, 2020 7:09 pm
by Bo_ry
Min ใช้กับ index ไม่ได้เพราะจะได้ 0

PTT จะเป็น 25 Feb - 25 March
เปลี่ยน ($D$4:$D$120="March")

เป็น ($D$4:$D$120>=date(2020,2,25))*($D$4:$D$120<=date(2020,3,25))

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Thu Mar 05, 2020 8:38 pm
by Yuumi
รบกวนอีกครั้ง ผมไม่ค่อยเข้าใจครับ
ตกลงแล้ว ตรง F135 กับ G135 ผมต้องคีย์สูตรเต็มว่าอย่างไรครับ
ถึงจะได้ จำนวนบริโภคต่ำสุดเป็น 11 gallon และ สูงสุดที่ 26 gallon ของเจ้า PTT ครับ .....

เพราะตอนนี้ผมใช้แต่เช็คตามระยะเวลาการวางบิล แล้ว คีย์ มือลงไปแทนครับ.....

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Fri Mar 06, 2020 8:31 am
by Yuumi
รบกวนหน่อยครับ ไม่แน่ใจว่า สูตรถูกหรือเปล่าครับ
พอดีผมคีย์ลงไปแล้วมันขึ้นว่า "you've enter too few argument"

=max(index(($A$:$A$120=$D134)*($D$4:$D$120>=date(2020,2,25))*($D$4:$D$120<=date(2020,3,25))

ตอนแรกคีย์ลงไป ตามด้านบน เหมือนตัววงเล็บเปิดปิดไม่ครบ ผมเลยใส่วงเล็บเพิ่ม
excel มันเลยแจ้งว่า "you've enter too few argument"

อย่างไรแล้วรบกวนหน่อยครับ

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Fri Mar 06, 2020 12:20 pm
by Bo_ry
PTT
=MIN(IF($A$4:$A$120=$D134,IF((--$C$4:$C$120>=DATE(2020,2,25))*(--$C$4:$C$120<=DATE(2020,3,25)),IF($F$4:$F$120,$F$4:$F$120))))
กด Ctrl+Shift+Enter

=MAX(INDEX(($A$4:$A$120=$D134)*(--$C$4:$C$120>=DATE(2020,2,25))*(--$C$4:$C$120<=DATE(2020,3,25))*$F$4:$F$120,))

Re: ต้องการใช้สูตร if ดึงค่า Min & Max ครับ

Posted: Sun Mar 08, 2020 7:30 pm
by Yuumi
ได้แล้วครับ ได้ทั้ง Min และ Max เลยครับ

ขอบคุณมากครับ