我在excel中有一个看起来像这样的数组,尽管更大:
A B C D E F G
0 0 0 0 2.78 2.48 2.11
0 0 0 3.11 2.94 2.78 2.15
0 0 0 2.72 2.7 2.2 2.15
0 1.68 2.44 2.29 2.13 0 0
1.89 1.97 2.43 2.07 0 0 0
我正在尝试查找一个时间间隔内的所有值,然后根据如下图所示的图表将它们替换为其他值。第一行中的值是一个间隔的限制,第二行代表我想插入到上面的数组中的值。例如,单元格A5中的值= 1.89。 1.89介于1.8和1.9之间,因此根据下面的图表,我希望输出为19.9192。
A B C D E F G ........>
1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 3.1 3.2
19.51 19.721 19.9192 20.1088 20.2903 20.4644 20.6318 20.7928 20.9484 21.0986 21.2441 21.3849 21.5214 21.654 21.7829 21.9083 22.0304
在寻找值方面,我尝试了以下方法:
=AND(A1 > Lower limit ,A1< Upper limit)
并使用下限/上限作为图表中的相邻单元格。例如,
=AND (A1> A10, A<A11)
返回的值为FALSE或TRUE,具体取决于单元格A1是否在指定的间隔内。我意识到这不太正确,但是我不确定如何进行。如果其为TRUE,则我不确定如何根据第二张图表插入想要的值-例如,如果该值介于1.8和1.9之间,则插入19.9192;如果值为FALSE,则不确定如何移动继续检查下一个间隔,并保持检查间隔,直到找到正确的间隔,并正确更换了电池。我认为可能需要一个循环,但是我在excel方面工作不多,还无法获得正确的语法来进行尝试。
答案 0 :(得分:1)
再次查看您的参考数据,格式的精度为0.1。而输入数据为0.01和0.1。另一个条件是您采用差异的下限。因此,我将舍入值1st,然后使用它查询引用表。例如。 1.89>转换为1.8>查找1.8对值>检索值。
在I2中输入:
=IFERROR(INDEX($11:$11,MATCH(INT(A1*10)/10,$10:$10,0)),"")
并将其拖动到O6。
+ ---- [公式分解:] ---- +
将数字四舍五入为0.1精度> INT(A1 * 10)/ 10
在选择> match()中寻找1.8位置
从确定的位置> index()检索值
希望有帮助。 (: