我有一排从50开始。当行从左向右移动时,我希望将此值增加50%。我有一个设定为200的门槛。该值不能超过此值,但必须在超过阈值之前显示其馀值。在此之后,它应该显示文本"MAX“。
给出一点背景,我有200人。在这一群体中,50人感染了一种疾病,这种疾病以目前受感染人口的50%的速度在整个人口中传播。很明显,你不能感染超过200人,因为这是阈值,所以在第一个“最大”之前的最后一个细胞应该显示剩下的被感染的人数,然后所有后续的细胞都应该显示“最大”。例如:
50,75,113,169,31,MAX,MAX,MAX,MAX etc其中31人是有待感染的剩余人口(200-169人)和50+75+113+169+31 = 200。这个是可能的吗?
发布于 2018-01-25 14:59:38
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发布于 2018-01-25 14:41:26
在细胞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))发布于 2018-01-25 14:50:52
由于四舍五入,我得到的输出略有不同:
=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))把50在A1和这个公式在B1和复制过来。

https://stackoverflow.com/questions/48445324
复制相似问题