PDA

View Full Version : แนะนำด้วยครับ



anu142
23 May 2007, 10:59
เนื่องจากผมได้ทำ file คำนวณ OT ของที่ทำงาน โดยใช่ IF ครับ
เช่น =IF((16.38-15.38)<1,"yes","no") ทำไม ผลที่ได้กลายเป็น Yes ได้ละครับ ผลลัพท์มันน่าจะได้ 1 ซึ่งไม่น้อยกว่า 1 แน่นอน ถ้าเป็นตัวเลขอื่นที่ไม่ใช่เลขนี้มันก็คำนวณให้นะครับ แต่ถ้าเป็น 16.33-15.33 และ 16.31-15.31 มันจะไม่ได้ค่าเป็น 1 น่ะครับ แต่ถ้าใช้การคำนวนธรรมดาคือ 16.38-15.38 เลยจะได้ค่าเป็น 1 ผมลืมบอกเงื่อนไขครับ คือ ถ้าคำนวณได้น้อยกว่า 1 ให้ตัดทิ้ง ถ้ามากกว่า 1 แต่น้อยกว่า 2 ให้เป็น 1 ถ้ามากกว่า 2 แต่น้อยกว่า 3 ให้เป็น 2 และผมใช้สูตรดังนี้ครับ
=IF(INT(D7-D6)<1,"-",IF(INT(D7-D6)<2,1,IF(INT(D7-D6)<3,2,IF(INT(D7-D6)<4,3,IF(INT(D7-D6)>=4,4))))) ช่วยแนะนำด้วยครับ:(:(:(

อรวีร์
23 May 2007, 13:31
ทดลองใช้สูตรนี้แทนค่ะ
=MIN( 4, FLOOR(D7*100-D6*100,100)/100 )

worachai_p
23 May 2007, 13:34
จากสูตรที่คุณให้มา
=IF(INT(D7-D6)<1,"-",IF(INT(D7-D6)<2,1,IF(INT(D7-D6)<3,2,IF(INT(D7-D6)<4,3,IF(INT(D7-D6)>=4,4)))))
พิจารณาได้ว่าสูตรของคุณ anu142 เมื่อเอา D7-D6 น้อยกว่า 1 ความจริงคือว่า ถ้าเท่ากับ 1 จะถือว่าเป็น "-" หรือว่า 1 ส่วน INT ผมคิดว่าไม่น่าจะต้องใช้เพราะว่าคุณได้ให้เครื่องหมาย <> ซึ่งครอบคลุมจำนวนทศนิยมด้วยแล้ว
ให้ลองปรับสูตรดูตามนี้ครับ
=IF((D7-D6)<=1,"-",IF((D7-D6)<=2,1,IF((D7-D6)<=3,2,IF((D7-D6)<=4,3,IF((D7-D6)>4,4)))))

anu142
23 May 2007, 14:13
:D ขอบคุณนะครับ คุณ อรวีร์ และ คุณ worachai_p คือตอนนี้ผมเอาสูตรของคุณอรวีร์ไปประยุกต์ใช้ครับ แต่ของคุณ worachai_p ผมลองแก้แล้วมันเหมือนเดิม คือจริงๆ เงื่อนไขที่ต้องการคือถ้ามันน้อยกว่า 1 ก็ให้มันเป็น "-" แต่ถ้าเท่ากับ 1 หรือ มากกว่านั้น ให้ไปทำเงื่อนไขต่อไปน่ะครับ ยังไงถ้ามีปัญหาอีกจะมารบกวนนะครับ :p ขอขอบคุณอีกครั้ง

วานิชย์
23 May 2007, 14:16
เนื่องจากผมได้ทำ file คำนวณ OT ของที่ทำงาน โดยใช่ IF ครับ
เช่น =IF((16.38-15.38)<1,"yes","no") ทำไม ผลที่ได้กลายเป็น Yes ได้ละครับ ผลลัพท์มันน่าจะได้ 1 ซึ่งไม่น้อยกว่า 1 แน่นอน ถ้าเป็นตัวเลขอื่นที่ไม่ใช่เลขนี้มันก็คำนวณให้นะครับ แต่ถ้าเป็น 16.33-15.33 และ 16.31-15.31 มันจะไม่ได้ค่าเป็น 1 น่ะครับ แต่ถ้าใช้การคำนวนธรรมดาคือ 16.38-15.38 เลยจะได้ค่าเป็น 1 ผมลืมบอกเงื่อนไขครับ คือ ถ้าคำนวณได้น้อยกว่า 1 ให้ตัดทิ้ง ถ้ามากกว่า 1 แต่น้อยกว่า 2 ให้เป็น 1 ถ้ามากกว่า 2 แต่น้อยกว่า 3 ให้เป็น 2 และผมใช้สูตรดังนี้ครับ
=IF(INT(D7-D6)<1,"-",IF(INT(D7-D6)<2,1,IF(INT(D7-D6)<3,2,IF(INT(D7-D6)<4,3,IF(INT(D7-D6)>=4,4))))) ช่วยแนะนำด้วยครับ:(:(:(


ดูรายละเอียดที่นี่ครับ
Uncertainty of Measurement
http://www.excelexperttraining.com/application/uncertainty.html
:)