1

Excelセルで文字列を検索し、その文字列が最初のセルで見つかったかどうかにかかわらず、2番目のセルに別の文字列を表示する機能は何ですか。

例えば:

セル A1 には、「これはサンプル テキストです」というテキストが含まれています。

別のシートの列に定義済みの文字列のリストがあり、それらは次のとおりです。「テキスト、サンプル1、サンプル2、文字列」(すべて別々のセルにあります)

セル A2 は次のように表示されます。 text - セル A1 にテキストという単語が存在するため、基本的には、あるセルから別のセルへの特定の単語のみを一致させる必要があります。実際には、A1 には多くの単語がありますが、1 つだけを探す必要があります。

4

3 に答える 3

3

4 つのテキスト文字列のリストが Sheet2!$D$1:$D$4 にある場合は、A2 でこの式を試してください

=LOOKUP(2^15,SEARCH(Sheet2!$D$1:$D$4,A1),Sheet2!$D$1:$D$4)

あなたの例では、「テキスト」を返します。一般に、その範囲から最後に一致した単語を返します

.....単語全体のみに一致するように少し変更することもできます

=LOOKUP(2^15,SEARCH(" "&Sheet2!$D$1:$D$4&" "," "&A1&" "),Sheet2!$D$1:$D$4)

単語間のスペースのみを想定 (句読点なし)

于 2012-09-06T12:58:59.193 に答える
0

別の文字列内で文字列を検索する場合は、通常、 (大文字と小文字を区別しSEARCH()ない)またはFIND()(大文字と小文字を区別する)を使用します。

=FIND(A2,A1)
=SEARCH(A2,A1)

これは、次のように確認できます。

=IF(ISERROR(FIND(A2,A1)),Text not found","Text Found")

単一のテキストフィールド内のセルの範囲を検索する場合は、少し注意が必要です。配列数式が必要になる場合があります。これが必要かどうかをお知らせください。解決できるかどうかを確認します。

于 2012-09-06T12:41:38.350 に答える
0

Sheet1 に入力している各文字列に、Sheet2 のセルの文字列が含まれているかどうかを確認していると仮定します。含まれているテキストが B 列に表示されるようにコードをフォーマットしました。数式を下にドラッグするだけで、A 列のすべての文字列がチェックされます。フォーマットの必要に応じて、これを簡単に変更できるはずです。

=IF(ISNUMBER(SEARCH(Sheet2!$A$1,A1)),Sheet2!$A$1, IF(ISNUMBER(SEARCH(Sheet2!$A$2,A1)),Sheet2!$A$2))

IF基本的には、Sheet2 の各セルをチェックするネストされた の長いリストです。括弧内Searchでは、シート 2 のセル A1 の値がセル A1 に含まれていることを比較しています。そうである場合は、Sheet2 の値をこの数式を使用してセルに入力します。そうでない場合は、Sheet2 セル A2 でもう一度チェックします。など、必要に応じて。

ノート:

関数はSEARCH()大文字と小文字を区別しません。FIND()大文字と小文字を区別するために置き換えることができます。

たとえば、セルに「text123」のような文字列が含まれている場合、これは「text」を返します。これは、文字列「text」が含まれているためです。

これは、Sheet2 で最初に遭遇した単語のみを返します。一致する複数の単語を返す必要がある場合は、お知らせください。修正する方法を見つけます。

于 2012-09-06T12:40:31.163 に答える