增加单元格的值直到达到阈值,然后显示余数,然后显示文本

时间:2018-01-25 14:32:17

标签: excel spreadsheet

我有一行以50开头。当行从左向右进行时,我希望将此值增加50%。我有一个设置为200的阈值。该值不能超过此值,但必须在超过阈值之前显示余数。在此之后,它应显示文本“MAX”。

为了给出一些背景信息,我有200人口。在这一群体中,50人感染了一种疾病,这种疾病在整个人口中传播的比例增加了目前感染人口的50%。显然你不能感染超过200个人,因为这是阈值,所以第一个“MAX”之前的最后一个单元格应显示剩余的感染人数,然后所有后续单元格应显示“MAX”。 e.g。

50,75,113,169,31,MAX,MAX,MAX,MAX等

其中31是剩余的感染人群(200-169)和50 + 75 + 113 + 169 + 31 = 200.这可能吗?

3 个答案:

答案 0 :(得分:1)

将A1 = 200,A2 = 50,将此公式设为B2并延伸至C2,D2 ....

=IF(AND(A2>=$A$2, ISNUMBER(A2)),IF((1+0.5)*A2<$A$1,(1+0.5)*A2,$A$1-A2),"max")

完全得到你需要的东西

50  75  113 169 31  max max max max

答案 1 :(得分:0)

在单元格A1中放入50。然后将此公式放在单元格B1中并向右填充:

=IF(SUM($A$1:A1)=200,"MAX",IF(SUM($A$1:A1)+A1*1.5>200,200-SUM($A$1:A1),A1*1.5))

答案 2 :(得分:0)

由于四舍五入,我得到的输出略有不同:

=IF(OR(A1<INDEX(1:1,MAX(COLUMN()-2,1)),A1="Max"),"Max",ROUND(IF(A1*1.5>200,200-A1,A1*1.5),0))

将A1中的50和此公式放在B1中并复制。

enter image description here