我试图创建一个公式,供应商可以输入他们的箱子数量最小6或12,然后有输入缩放 *2,*3,*4等。在我的公式中比较另一列。
目前,我有一个供应商的公式,其盒子数量是已知的,看起来像:=IF(D9=0,0,IF(AND(D9>0,D9<=12),12,IF(AND(D9>12,D9<=24),24,D9)))
公式是大得多去盒数量的300,我相信有一个更好的方法来写公式以及我只是没有把时间来改善它,所以它不是那么长。
所以我试着改变它的地方,框数量12是现在的框,供应商可以输入他们的数量。=IF(D9=0,0,IF(AND(D9>0,D9<=(I9*2),12,IF(AND(D9>12,D9<=(I9*3),24,D9)))
这是不工作,所以我想知道是否有一个更好的方法来写这个公式,或绕过这个错误?
2条答案
按热度按时间hi3rlvi21#
如果你把所有可能的值都放在A列中,这个公式会给予你一个比你放在D9中的值更高的值。列A中的数字必须从大到小排序,这一点很重要。
piztneat2#
你想把
D9
四舍五入到I9
的最接近的倍数,对吗?没有一个函数可以舍入到12的最接近倍数,但也不需要查找或条件逻辑。相反,您可以通过除以
I9
来缩小您的数字,将其向上舍入到最近的整数,然后将 that result乘以I9
。如果
D9
是订购的小部件数量,I9
是12,因为您可以将最多12个小部件放入一个盒子中,D9/I9
将D9
转换为您理论上需要的确切数量的盒子,ROUNDUP(D9/I9,0)
告诉你要用多少个盒子,然后,I9*ROUNDUP(D9/I9,0)