2 つの異なる Excel テーブルがあります。1 つのテーブル列には従業員のファースト ネームが含まれており、もう 1 つのテーブルには 1 つのセルに複数のファースト ネームとその他の値が含まれています。例:
最初のテーブル
ジョン
・ポール・
ピーター・
アカーシュ
・サム
2番目のテーブル
シーア、ジョン、アカーシュ
アカーシュ、ピーター、ポール
ピーター、ジョン、サム
ここで、2 番目のテーブルで名前で検索し、Yes または No を返したいと思います。
答え1
あなたの質問を正しく理解しているかどうかよく分かりません。次のように仮定します。
- 最初の表にはセルごとに1つの名前が含まれています
- 2番目の表では、区切り文字として常に「,」を使用します。
- 2 番目のテーブルの各行の最初の名前が最初のテーブルに含まれているか (TRUE を返す)、含まれていないか (FALSE を返す) を確認します。
その場合は、次のようにすればいいでしょう:=NOT(ISERROR(VLOOKUP(LEFT(B1;SEARCH(",";B1)-1);$A$1:$A$5;1;FALSE)))
徹底的に説明します:
- まず、「、」を探します(
SEARCH
最初の「、」の位置がわかります)。 - 次に、その左側の文字列 (
LEFT
) を取得します。 - 私はその文字列 (
LOOKUP
) をテーブルで検索し、それが正確に一致することを要求します (最後のFALSE
引数)。 - 失敗した場合はエラーが返されるので、それをチェックします (結果がエラーの
ERROR
場合は TRUE を返します)。LOOKUP
- 実際に知りたいのは、それがエラーであるのではなく、見つかった場合なので、 を使用して TRUE から FALSE に、またはその逆に移動します
NOT
。
いくつかの「証拠」付き: