我似乎无法在 excel 中找出一个将数字向上或向下舍入以以 49 或 99 结尾的公式。
我想要做什么
824 美元应四舍五入至 799 美元;825 美元应四舍五入为 849 美元;874 美元应四舍五入至 899 美元;873 美元应四舍五入至 849 美元
该数字应向上或向下舍入到最接近的数字。
因为它总是 49 或 99,你可以像这样使用 MROUND:
=MROUND(A4,50)-1
如果您有一个相当小的范围,并且您想要其他不是彼此倍数的唯一值,您可以使用这样的内置查找函数(将“A1”替换为您的值或单元格地址):
=LOOKUP(A1, {0,575,625,675,725,775,825,875,900}, {"Too Low",599,649,699,749,799,849,899,"Over"})
查找功能允许您进行奇数舍入,例如通过向上舍入而不是向下舍入 874 来引用。为这个偏移量改变这样的等式。
=LOOKUP(A1, {0,574,625,674,725,774,825,874,900}, {"Too Low",599,649,699,749,799,849,899,"Over"})
=ROUND(A1/50,0)*50-1
资料来源:http ://www.mrexcel.com/forum/excel-questions/24527-round-nearest-50-a.html
所以本质上,只需四舍五入到最接近的 50,然后减去 1。
我同意将 874 舍入到 899 似乎很奇怪。然而,如果这不是一个错误并且可以被推断为,例如,在抢七的情况下希望选择 99,那么下面是独奏:
=IF(ABS(MROUND(A1;100)-1-A1)<=ABS(MROUND(A1;50)-1-A1);MROUND(A1;100)-1;MROUND(A1;50)-1)
输出:
824 799
825 849
873 849
874 899