这类问题基本不能用公式来解决,因为答案可能有多种,所以不是方程能解决的,也就不能用公式。Excel中可以用规划求解来得到答案:
1 先在工作表中输入基本的数据,如图1,A列输入商品名,B列输入对应的价格,C列输入购买数量,D列用公式得到各自的金额。C列的数量先随意输入相对合适的数字即可。图中:D2=B2C2,下拉到D3,D4=SUM(D2:D3)。D5中得到剩余的钱:D5=E2-D4(或=1000-D4,也一样)
2 数据——规划求解,如图2,设置相应的求解条件,求解目标,剩余钱最小。约束条件:商品数量为整数、剩余钱不为负数。
求解,Excel经过数分钟的求解运算后,得到一枂可能解,如图3:
按确定后,将把求解结果保存到工作表中。
C2公式右拉至D2再下拉:
=IF($B2="","",IF(COLUMN()=3,INT($B2/865),MOD($B2,865)))
如果当余数为0时,不想显示0,而把0显示为空白的,公式改为这样:
=TEXT(IF($B2="","",IF(COLUMN()=3,INT($B2/865),MOD($B2,865))),"[=] ")
也可以分开两条公式:
C2公式下拉:
=IF(B2="","",INT(B2/865))
D2公式下拉:
=IF(B2="","",MOD(B2,865))
如果当余数为0时,不想显示0,而把0显示为空白的,D2公式改为这样:
=IF((B2="")+(MOD(B2,865)=0),"",MOD(B2,865))
round函数假设A1单元格需要设置1个小数点
那么B1输入=round(A1,1)
1表示几位小数点。
余数小于10,可以这样写
=round(mod(A1,10),1)Excel 中有求余函数(MOD(Number, Divisor))。
至于你想怎么分出来,只能具体情况具体对待。比如说,使用 IF() 函数与 MOD() 函数的嵌套。或者还有 CHOOSE() 函数与 MOD() 函数的嵌套。等等方法。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)