Page 1 of 1

เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Mon Apr 18, 2016 6:56 pm
by shokundog
รบกวนสอนวิธีการใช้if หลายๆชั้นให้หน่อยค่ะ พอดีลองทำแล้ว แล้วทำไม่สำเร็จค่ะ
ตัวอย่าง
ในช่อง b3 ต้องได้ 6 แต่พอใส่สูตรแล้ว มี 8 ต่อ ท้ายเป็น 68 ค่ะ
IF(a2<200,0,IF(a2<300,1,IF(a2<400,2,IF(a2<500,3,IF(a2<600,4,IF(a2<800,5,IF(a2<1000,6,IF(a2<2000,7,))))))))&IF(a2<3000,8,IF(a2<4000,9,IF(a2<5000,10,IF(a2>=5000,11,0))))

ขอบคุณค่ะ

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Mon Apr 18, 2016 7:05 pm
by snasui
:D ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น

ตัวอย่างการใช้ IF ตามที่ต้องการครับ
=IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,IF(A2<3000,8,IF(A2<4000,9,IF(A2<5000,10,IF(A2>=5000,11,0))))))))))))

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Tue Apr 19, 2016 9:27 am
by shokundog
snasui wrote::D ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น

ตัวอย่างการใช้ IF ตามที่ต้องการครับ
=IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,IF(A2<3000,8,IF(A2<4000,9,IF(A2<5000,10,IF(A2>=5000,11,0))))))))))))
พี่ค่ะ ระบบขึ้นข้อความนี้ค่ะ
The specified formula cannot be entered because it uses more levels of nesting than are allowed in the current file format.

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Tue Apr 19, 2016 9:35 am
by XDoll
shokundog wrote:
snasui wrote::D ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น

ตัวอย่างการใช้ IF ตามที่ต้องการครับ
=IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,IF(A2<3000,8,IF(A2<4000,9,IF(A2<5000,10,IF(A2>=5000,11,0))))))))))))
พี่ค่ะ ระบบขึ้นข้อความนี้ค่ะ
The specified formula cannot be entered because it uses more levels of nesting than are allowed in the current file format.
อ่านที่อาจารย์เขียนไว้ดีๆครับ "ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น" หากนามสกุล *.xls จะได้แค่ 7 ชั้นครับ

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Tue Apr 19, 2016 9:58 am
by shokundog
XDoll wrote:
shokundog wrote:
snasui wrote::D ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น

ตัวอย่างการใช้ IF ตามที่ต้องการครับ
=IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,IF(A2<3000,8,IF(A2<4000,9,IF(A2<5000,10,IF(A2>=5000,11,0))))))))))))
พี่ค่ะ ระบบขึ้นข้อความนี้ค่ะ
The specified formula cannot be entered because it uses more levels of nesting than are allowed in the current file format.
อ่านที่อาจารย์เขียนไว้ดีๆครับ "ไฟล์ที่มีนามสกุลเป็น .xlsx สามารถซ้อน If ได้ 64 ชั้น" หากนามสกุล *.xls จะได้แค่ 7 ชั้นครับ
ขอโทษทีค่ะ คิดว่าตัวเองเป็นนามสกุล *.xlsx แล้วถ้าเป็นแบบนี้ต้องแก้ไขยังไงค่ะ

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Tue Apr 19, 2016 10:07 am
by XDoll
:D Office 2007 ขึ้นไป ให้ save as ไฟล์นามสกุล *.xls เป็น *.xlsx ได้ครับ

หลังจากนั้นปิดไฟล์ แล้วเปิดขึ้นมาใหม่ สามารถใส่สูตรที่อาจารย์ให้มาได้ตามปกติครับ

หากเป็นเวอร์ชั่น Office 2003 ให้แก้สูตรเป็น
=(IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,""))))))))&IF(A2>=5000,11,IF(A2>=4000,10,IF(A2>=3000,9,IF(A2>=2000,8,"")))))+0

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Tue Apr 19, 2016 9:55 pm
by ZEROV
ใช้ฟังชั่น Match() น่าจะง่ายกว่าครับ
=MATCH(A2,{0,200,300,400,500,600,800,1000,2000,3000,4000,5000},1)-1

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Thu Apr 21, 2016 12:00 am
by shokundog
ZEROV wrote:ใช้ฟังชั่น Match() น่าจะง่ายกว่าครับ
=MATCH(A2,{0,200,300,400,500,600,800,1000,2000,3000,4000,5000},1)-1
ขอบคุณมากๆๆค่ะ

Re: เรื่องการใช้ if หลายชั้น ค่ะ

Posted: Thu Apr 21, 2016 12:01 am
by shokundog
XDoll wrote::D Office 2007 ขึ้นไป ให้ save as ไฟล์นามสกุล *.xls เป็น *.xlsx ได้ครับ

หลังจากนั้นปิดไฟล์ แล้วเปิดขึ้นมาใหม่ สามารถใส่สูตรที่อาจารย์ให้มาได้ตามปกติครับ

หากเป็นเวอร์ชั่น Office 2003 ให้แก้สูตรเป็น
=(IF(A2<200,0,IF(A2<300,1,IF(A2<400,2,IF(A2<500,3,IF(A2<600,4,IF(A2<800,5,IF(A2<1000,6,IF(A2<2000,7,""))))))))&IF(A2>=5000,11,IF(A2>=4000,10,IF(A2>=3000,9,IF(A2>=2000,8,"")))))+0
ขอบคณมากๆๆค่ะ