2017-09-08 7 views
1
ID Height Phase Corrected_Height 
1 0  A  0     
2 3.5  A  3.5    
3 1.6  A  NA    
4 11.2  A  11.6    
5 10.1  A  NA     
6 13.2  A  13.1    
7 14.7  A  14.7 
8 34.5  A  34.5 
9 34.2  A  NA 
10 33  A  33 
11 40  A  40     
.. 
300 237.5 P  237.5    
301 231.7 D  231.7    
302 233.3 D  NA 
303 232.1 D  232.1 
304 231.7 D  231.7 
305 232.1 D  NA 
306 234.5 D  234.5 
307 230.1 D  230.1    

555 1.0  D  1.0 

これはworking with Nested IF statement in excelへのフォローアップの質問です。私は数式で計算されたCorrected_height列を作成しました。ExcelでネストされたIF文を使用

それはある程度までは機能しますが、たとえばID 8-11を開始する場合は、AフェーズにあるためID 10をNAにします。同様に、Dフェーズにあるので、ID306もNAとなる。数式では、それは前の値を比較するだけなので、助けにはならないようです。 corrected_heightの列は次のようになります13.1 14.7 34.5 NA NA 40 .....231.7 NA NA 231.7 NA NA 230.1

答えて

2

2つの出力しか必要ないので、IFを単純化してください。 NAまたは列B.

内の数字は、正しい動作を保証するために、値を確認するためにMINとMAXを使用することができます:

=IF(OR(AND(C3="A";B3<MAX($B$2:B2));AND(C3="D";B3>MIN(INDEX(B:B;MATCH("P";C:C;0)):B2)));"NA";B3) 

enter image description here

関連する問題