2016-06-21 15 views
0

次の処理を行う式が必要です:(1)Raw $ G = A5の値、AND(2)Raw $ J = ng/L OR mg/L OR ug/Lを返し、値「mg/L」を返します。そうでなければ、列Jの値を返します。私はこれで2回の試みをコピーしました(Vlookupを使用します。列Jを直接参照)。どちらも、私の方程式の前半が正しく解釈されていないかのように、Jの値を返す。私が行方不明になっていることについての考えは高く評価されています!入れ子のIF、AND、OR、VLOOKUP文Excel 2016

=IF(OR(Raw!$J:$J="ng/L",Raw!$J:$J="ug/L",Raw!$J:$J="mg/L"),IF(Raw!$G:$G=$A6,"mg/L",Raw!$J:$J)) 


=IF(OR(Raw!$J:$J="ng/L",Raw!$J:$J="ug/L",Raw!$J:$J="mg/L"),IF(Raw!$G:$G=$A5,"mg/L",VLOOKUP($A5,Raw!$G:$J,4,FALSE))) 

答えて

2

これを試してみてください。

=If(OR(INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="ng/L",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="mg/L",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="ug/L"),"mg/l",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))) 

それはあなたが欲しいものを行う必要があります。 Raw!G:GにA5の値が見つからない場合、エラーが発生します。そのエラーに対処したい場合は、IFERROR()でラップしてください。

=IFERROR(If(OR(INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="ng/L",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="mg/L",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))="ug/L"),"mg/l",INDEX(Raw!J:J,MATCH(A5,Raw!G:G,0))),A5 & " Not Found") 
+0

これはうまくいきました。ありがとうございました。 VlookupではなくINDEX/MATCHの組み合わせをいつ使用するのかをどのように知っていますか? – KRD

+0

この場合、VLookupを使用できました。 Vlookupは、検索しているデータが返されているデータの左側にある場合にのみ機能します。この場合、インデックス/マッチが私の頭の中で最初に浮かびました。 Vlookupは 'VLOOKUP(A5、Raw!G:J、4、FALSE)'でした。IND​​EX/MATCHの代わりに動作するはずです。 @KRD –