[英]Rounding to a set of values in Excel
我有一组要舍入到给定值的数据:
示例:设置值为:10000,5000,2500,2000,1000,500,250,200,100,50,25,20,10,5,2,1
我想四舍五入到最接近的值(而不是向上/向下舍入)。 如果值在中间-选项之一(不在乎哪个)。
26-> 25 3.5-> 2或5
谢谢
您可以通过vlookup做到这一点
建立一张桌子
| A | B
-------+--------+--------
1 | 0 | 1
2 | 1 | 2
3 | 2 | 5
4 | 5 | 10
5 | 10 | 20
6 | 20 | 25
7 | 25 | 50
8 | 50 | 100
9 | 100 | 200
10 | 200 | 250
11 | 250 | 500
12 | 500 | 1000
13 | 1000 | 2000
14 | 2000 | 2500
15 | 2500 | 5000
16 | 5000 | 10000
A20: 320
B20: =VLOOKUP(320,$A$1:$B$16,1,TRUE) --> 250
C20: =VLOOKUP(320,$A$1:$B$16,2,TRUE) --> 500
D20: =(B20+C20)/2 --> 375
E20: =IF(A20 < D20;B20;C20)
在E20中,您将找到您的结果
未测试
我怀疑是否需要一个数组公式,尽管假设序列在A1到A16(降序排列)中,对于大于1000
数字将返回#N/A
,对于小于1
数字将返回0
:
=IF(INDEX(A:A,MATCH(C1,A:A,-1))-C1<C1-INDEX(A:A,MATCH(C1,A:A,-1)+1),INDEX(A:A,MATCH(C1,A:A,-1)),INDEX(A:A,MATCH(C1,A:A,-1)+1))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.