2012-07-03 9 views
38

私は99504(値)まで伸びる列Eと2691(値)まで伸びる列Iを持っています。列には拡張子のあるファイル名が含まれています。この列Aの値に列Bの値が含まれているかどうかを確認しますか?

E    I 
TSL_groups.mrk pcbx_report.mrk 
abcd.mrk  jhuo.mrk 

のように...

よう

何かが私は列内のファイルは、I(Filename_Bを見出し)(Filename_Aを見出し)列Eに存在するかどうか知りたいです。真の場合は、新しい列でTRUEと言って、列Kとしましょう。

どうすればよいですか? TIA。

+0

Vlookupの式を使用します。 Excelのヘルプを確認してください:) –

答えて

54

あなたが<single column I value>と及んだという名前を持つ<entire column E range>を置き換えることができ、この

=IF(ISNA(VLOOKUP(<single column I value>,<entire column E range>,1,FALSE)),FALSE, TRUE) 

- または -

=IF(ISNA(VLOOKUP(<single column I value>,<entire column E range>,1,FALSE)),"FALSE", "File found in row " & MATCH(<single column I value>,<entire column E range>,0)) 

を試みることができます。それはおそらく最も簡単だろう。

あなたが望むどの列でも、I列の長さまで完全にその数式をドラッグします。

40

VLOOKUPを使用できますが、これにはTrueまたはFalseを返すラッパー関数が必要です。それは(比較的)遅いことは言うまでもありません。代わりにCOUNTIFまたはMATCHを使用してください。

列(I1からI2691に)私の既存の値に次の列Kで、この式を下に入力します。

=COUNTIF(<entire column E range>,<single column I value>)>0 
=COUNTIF($E$1:$E$99504,$I1)>0 

あなたはまた、MATCHを使用することができます。

=NOT(ISNA(MATCH(<single column I value>,<entire column E range>))) 
=NOT(ISNA(MATCH($I1,$E$1:$E$99504,0))) 
+2

+1。 MATCHは数値またはエラーを返すので、ISNAではなくISNUMBER(または1/0の結果を返すCOUNT)を使用することができます。 –

+0

@barryhoudini良い点は、数式の組み合わせがいくつかあります作業。 – JimmyPena

6

あなたはこれを試すことができます。 :)簡単な解決策!

=IF(ISNUMBER(MATCH(I1,E:E,0)),"TRUE","") 
関連する問題