在excel

时间:2017-09-05 15:04:25

标签: excel excel-formula

ID   Height   Phase   Corrected_Height  Final
1    0        A       0                 0
2    1.2      A       1.2               1.2
3    3.9      A       3.9               3.9
4    5.8      A       5.8               5.8
5    4.6      A       NA                7.7
6    7.7      A       7.7               9.3
7    9.3      A       9.3              10.8
..
300  237.5    P       237.5             ..
301  234.7    D       234.7             ..
302  233.3    D       233.3             ..
303  235.1    D       NA                ..
555  1.0      D       1.0   

我有一组结构相似的数据。由于@Scott Craner解决方案Naming a behavior in Excel,因此根据公式=IF(B2=MAX(B:B);"P";IF(ROW(B2)<MATCH(MAX(B:B);B:B;0);"A";"D"))计算了相列 并计算我使用的=IF(C4="A" & B4>B3;B4; IF(C4="D" & B4<B3;B4;"NA")))的Corrected_Height列。但是我没有得到所需的结果。这个想法是在&#34; A&#34;阶段,如果出现比前一个值更低的值,它应该更改为NA并且在&#34; D&#34;阶段,如果一个值高于前一个值,它应该再次变为NA。有什么建议我应该在公式中改变什么?而且我还想要一个最终专栏,它给出了没有NA的值。 A,P和D同相意味着上升,峰值和下降。

1 个答案:

答案 0 :(得分:2)

&运算符不能在Excel公式中逻辑地和两个条件一起使用。而是使用AND()函数:

=IF(AND(C4="A", B4>B3), B4, IF(AND(C4="D", B4<B3), B4, "NA"))