Page 1 of 1

ใช้ if เกิน 7 ชั้นใน excel2003 ครับ

Posted: Tue May 22, 2012 4:31 pm
by s_pongpan
เครื่องที่ทำงานผมใช้ excel 2003 ครับ แล้วผมจะเขียนสูตรดังนี้เพื่อใช้ในการตรวจเช็คผลคะแนนงานเลือกตั้งครับ
=IF(B20>B10,"หน่วย1ผิด",IF(C20>C10,"หน่วย2ผิด",IF(D20>D10,"หน่วย3ผิด",IF(E20>E10,"หน่วย4ผิด",IF(F20>F10,"หน่วย5ผิด",IF(G20>G10,"หน่วย6ผิด",IF(H20>H10,"หน่วย7ผิด",IF(I20>I10,"หน่วย8ผิด",IF(J20>J10,"หน่วย9ผิด",IF(K20>K10,"หน่วย10ผิด",IF(L20>L10,"หน่วย11ผิด",IF(M20>M10,"หน่วย12ผิด",IF(N20>N10,"หน่วย13ผิด",IF(O20 >O10,"หน่วย14ผิด",IF(P20>P10,"หน่วย15ผิด",IF(Q20>Q10,"หน่วย16ผิด",IF(R20>R10,"หน่วย17ผิด",IF(S20>S10,"หน่วย18ผิด",IF(T20>T10,"หน่วย19ผิด",IF(U20>U10,"หน่วย20ผิด",IF(V20>V10,"หน่วย21ผิด",IF(W20>W10,"หน่วย22ผิด",IF(X20>X10,"หน่วย23ผิด",IF(Y20>Y10,"หน่วย24ผิด","ข้อมูลถูกต้อง")))))))))))))))))))))))) ผมลองใช้ VLOOKUP แต่ไม่สำเร็จไม่รู้ว่าใช้ด้วยกันได้หรือเปล่า ผมไม่เก่ง excel ครับ รบกวนผู้รู้แปลงสูตรนี้ให้ใช้ใน excel 2003 ให้หน่อยครับ ขอบคุณครับ

Re: ใช้ if เกิน 7 ชั้นใน excel2003 ครับ

Posted: Tue May 22, 2012 4:34 pm
by bank9597
:D หากหลีกเลี่ยงได้ ก็ควรหลีกเลี่ยงครับ การใช้ If ที่มีหลายชั้นเกิดไปทำให้เกิดความสับสนได้ครับ สามารถหาวิธีการอื่นมาแทนได้ครับ

ลองแนบไฟล์ตัวอย่าง พร้อมคำอธิบายมาดูได้ไหมครับ

Re: ใช้ if เกิน 7 ชั้นใน excel2003 ครับ

Posted: Tue May 22, 2012 6:05 pm
by joo
ลองแบบนี้ดูครับว่าตรงกับที่ต้องการไหม :D
=IF(B20>B10,"หน่วย1ผิด",IF(C20>C10,"หน่วย2ผิด",IF(D20>D10,"หน่วย3ผิด",IF(E20>E10,"หน่วย4ผิด",IF(F20>F10,"หน่วย5ผิด",IF(G20>G10,"หน่วย6ผิด",IF(H20>H10,"หน่วย7ผิด",IF(I20>I10,"หน่วย8ผิด",""))))))))&IF(J20>J10,"หน่วย9ผิด",IF(K20>K10,"หน่วย10ผิด",IF(L20>L10,"หน่วย11ผิด",IF(M20>M10,"หน่วย12ผิด",IF(N20>N10,"หน่วย13ผิด",IF(O20>O10,"หน่วย14ผิด",IF(P20>P10,"หน่วย15ผิด",IF(Q20>Q10,"หน่วย16ผิด",""))))))))&IF(R20>R10,"หน่วย17ผิด",IF(S20>S10,"หน่วย18ผิด",IF(T20>T10,"หน่วย19ผิด",IF(U20>U10,"หน่วย20ผิด",IF(V20>V10,"หน่วย21ผิด",IF(W20>W10,"หน่วย22ผิด",IF(X20>X10,"หน่วย23ผิด",IF(Y20>Y10,"หน่วย24ผิด","ข้อมูลถูกต้อง"))))))))

Re: ใช้ if เกิน 7 ชั้นใน excel2003 ครับ

Posted: Tue May 22, 2012 6:19 pm
by snasui
:D อีกวิธีครับ ที่เซลล์ใด ๆ คีย์

=IF(SUMPRODUCT(--($B$20:$Y$20>$B$10:$Y$10))=0,"ข้อมูลถูกต้อง","หน่วยกิต "&MATCH(TRUE,INDEX($B$20:$Y$20>$B$10:$Y$10,0),0)&" ผิด")

Enter

กรณีทดสอบสูตรคุณ joo และสูตรนี้ :aru: แล้วยังไม่ได้คำตอบ ช่วยแนบไฟลตัวอย่างตามที่คุณ bank9597 ได้แนะนำไปครับ :mrgreen:

Re: ใช้ if เกิน 7 ชั้นใน excel2003 ครับ

Posted: Tue May 22, 2012 8:31 pm
by s_pongpan
ต้องขอขอบคุณทุกท่านครับที่มาช่วยให้คำตอบ ผมว่าของคุณ snasui ตรงกับที่ผมต้องการเลยครับ ฟังก์ชั่น SUMPRODUCT ผมไม่เคยใช้เลย มีประโยชน์มากเลยครับผมคงต้องศึกษาฟังก์ชั้นนี้เพิ่มเติมมันเอาไปประยุกต์ใช้ได้ดีเลยครับ