我使用的是Excel MATCH
函数,如果lookup_value
是一个未修改的数字,它可以工作,但如果lookup_value
是一个计算的数字,它并不总是工作。Excel MATCH函数部分工作
更具体:
我的电子表格可以询问用户是否她想用粒度的推荐值。如果她选择“No
”,她可以选择输入自己的价值。她可以以英制单位或公制单位输入数值。有一个用于英制输入的单元和用于度量输入的单元。 (她可以选择填写的内容)。因为所有的计算最终都必须以英制单位来完成,所以最终的粒度框会采用用户指定的值并保持原来的样子(如果它是以英制输入的),或者将其转换回英制(if它是以公制输入的)。它所以用这个公式计算:
=IF(AND(S24="No",U25=""),S25,IF(AND(S24="No",U25<>""),U25/25.4,S23))
凡S24
拥有决定是否要使用推荐值,U25
持有公制输入,S25
持有皇输入,并S23
持有的推荐值。转换是从毫米到英寸。
然后由另一张纸调用最终颗粒大小,并在MATCH
函数中使用。 公制输入单元中的某些输入值(来自下拉菜单)会导致MATCH
函数发生#N/A
错误。
我试图删除多余的空格,格式化所有涉及到的单元格是3位小数的数字,并将从公制到英制的转换直接输入lookup_value
单元格中(例如,不是拉出最终粒径,而是输入以下在Lookup_Array中的细胞,但它仍然无法找到的lookup_array
)
=9.525/25.4
0.375有谁知道为什么MATCH
功能仅针对一些lookup_values
的工作,即使他们只是只有entailed乘以每个帝国的转换值除以25.4,然后除以25.4?
http://en.wikipedia。org/wiki/Floating_point#Accuracy_problems =>将输入数字四舍五入,如果目标数字也计算在内,则还需要舍入它们 - '= ROUND(9.525/25.4,3)' - 否,当您更改数字格式只显示3位数字,即根本不改变数值 – Aprillion 2015-02-09 08:11:58