提问人:Logan Gordon 提问时间:5/4/2023 最后编辑:bonCodigoLogan Gordon 更新时间:5/6/2023 访问量:56
Excel中基于输入数据的公式?
Formula in Excel based of input data?
问:
我正在尝试创建一个公式,供应商可以在其中输入他们的最小盒子数量 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)))
这不起作用,所以我想知道是否有更好的方法来编写这个公式,或者绕过这个错误?
答:
1赞
kevin
5/4/2023
#1
如果您将所有可能的值都放在 A 列中,则此公式将为您提供比您在 D9 中输入的数字下一个高的数字。重要的是,必须将 A 列中的数字从大到小排序。
=IF(D9=0,0,INDEX(A:A,MATCH(D9,A:A,-1)))
评论
0赞
bonCodigo
5/4/2023
在我们向他们提供直接的解决方案之前,让 OP 自由地欣赏现场提供的建议。
-1赞
JSmart523
5/4/2023
#2
你想把它四舍五入到最接近的倍数,对吧?D9
I9
没有单个函数可以四舍五入到最接近的 12 的倍数,但您也不需要查找或条件逻辑。相反,您可以通过将 除以 来缩小数字,将其四舍五入到最接近的整数,然后将该结果乘以 。I9
I9
=I9*ROUNDUP(D9/I9,0)
如果订购的小部件数量是 12,因为您最多可以将 12 个小部件放入一个盒子中,D9
I9
D9/I9
转换为您理论上需要的确切数量的盒子,D9
- 但是 3.25 个盒子没有意义,所以告诉你你会使用多少个盒子,然后,
ROUNDUP(D9/I9,0)
- 要确定有多少小部件可以放入这么多框中,您需要将框数乘以 12,即
I9*ROUNDUP(D9/I9,0)
评论
LOOKUP()
VLOOKUP()
XLOOKUP()
IF()
INDEX MATCH