この記事では、ExcelとGoogleシートで最も一般的に使用される式を調査して、列、行、またはセルの範囲内に値が存在するかどうかを確認します。
経験豊富なユーザーであろうと、お気に入りのスプレッドシートプログラムについて学び始めた場合でも、特定の範囲に特定の値が存在するか、存在しないかどうかを迅速に識別する方法を知ることで、データ分析で多くの時間と労力を節約できます。これは、大規模なデータセットを操作する場合や研究を実施する場合に特に役立ちます。 Microsoft ExcelとGoogleシートでは、このタスクを実行するためのいくつかの式があります。ステップバイステップガイドを使用すると、データセットの構造とサイズに関係なく、スプレッドシートに簡単に適用できます。
特定の値がさまざまなセルに存在するかどうか、およびそれがテキストを返す場合、およびそれがそうでない場合は別のテキストを返しているかどうかを確認するには、ifとcountif関数の組み合わせを使用できます。
if(countif( range 、 value )> 0、 "yes"、 "no")この式では、Countifは特定の値の発生を範囲内で数えます。カウントがゼロを超える場合、IFステートメントは「はい」を返します。値が範囲内で見つからない場合、countif関数はゼロをもたらし、出力が「いいえ」になります。
この汎用式は、可能なすべてのシナリオでうまく機能します。
C3の値が列Aに存在するかどうかをテストするには、この式を使用できます。
=IF(COUNTIF($A$3:$A$20, C3)>0, "Yes", "No")
フォーミュラの$サインを使用してセルD4:D7に正しくコピーすることにより、範囲の参照($ A $ 3:$ A $ 20)をロックすることに注意してください。
b5の値が行b2:i2に表示されるかどうかを確認するには、式は次の形式を取得します。
=IF(COUNTIF($B$2:$I$2, B5)>0, "Yes", "No")
特定の値が2D範囲で発生するかどうかを確認するには、Countifの最初の引数への対応する範囲の参照を提供します。例えば:
=IF(COUNTIF($A$3:$B$11, D3)>0, "Yes", "No")
IF Countif式が最も簡単ですが、特定の値が範囲に表示されるかどうかを見つける唯一の方法ではありません。以下は、いくつかの代替ソリューションです。
リスト内で値が発生したかどうかを確認する別の方法は、ISNumber関数との一致を使用することです。例えば:
=IF(ISNUMBER(MATCH(C3, $A$3:$A$20, 0)), "Yes", "No")
一致関数は、数として範囲(A3:A20)内のルックアップ値(C3)の位置を返します。一致が見つからない場合は#n/aエラー。 ISNumber関数は数値を真に変換し、エラーをFalseに変換します。構造を最終結果として「はい」または「いいえ」を与えるifに包みます。
わずかに複雑であるがまだ機能しているソリューションは、if、isnaおよびvlookup機能を1つの式で使用することです。
=IF(ISNA(VLOOKUP(C3, $A$3:$A$20, 1, FALSE)), "No", "Yes")
ここで、vlookup関数の検索ルックアップ値は指定された配列であり、同じ列(1)から正確な一致(false)を返します。一致が見つからない場合、#n/aエラーが返されます。 (Excel 365およびExcel 2021では、vlookupの代わりにXlookupを使用できます。)ISNA関数は、#n/aエラーの結果をチェックし、正の場合はtrueを返します。最後に、IF関数は、True(No Match)に対して「いいえ」とFalse(はい」(一致)の「はい」を返します。
詳細については、ExcelでvlookupでiSnaを使用する方法をご覧ください。
このソリューションは、vlookupの代わりに試合を使用してマッチの範囲を確認することを除いて、以前のソリューションと非常によく似ています。
=IF(ISNA(MATCH(C3, $A$3:$A$20, 0)), "No", "Yes")
ヒント。目標が1つの列でルックアップ値を見つけて、別の列から一致する値を返すことである場合は、vlookupまたはXlookup関数を基本形式で使用します。
Googleシートでは、Excelで使用したまったく同じ式を使用して、範囲に値が存在するかどうかを確認できます。
たとえば、D3の値が範囲A3:B11で発生するかどうかを見つけるには、E4の式は次のとおりです。
=IF(COUNTIF($A$3:$B$11, D3)>0, "Yes", "No")
このチュートリアルの最後に利用できるサンプルスプレッドシートには、さらにいくつかの式を見つけることができます。
範囲内のセルに特定のサブストリングが含まれているかどうかを確認するには、ルックアップ値の両側にワイルドカードキャラクター(アスタリスク)を配置して、COUNTIFがセル内のどこにでも探すようにします。
if(countif( range 、 " * value *")> 0、 "yes"、 "no")たとえば、Bellow式は、範囲A3:B11のセルが「Apple」という単語が含まれているかどうかを確認します。
=IF(COUNTIF(A3:B11, "*apple*")>0, "Yes", "No")
ハードコードされた値の代わりに特定のセルを参照している場合は、このようなセルの参照の前後にアスタリスクを連結します。
=IF(COUNTIF($A$3:$B$11,"*"&D3&"*")>0, "Yes", "No")
特定の範囲に存在する値を識別するより視覚的な方法は、Excel条件付き書式でそれらを強調する可能性があります。手順は次のとおりです。
=MATCH(C3, $A$3:$A$20, 0)
=COUNTIF($A$3:$A$20, C3)>0
ここで、C3は目標値を持つ最上位のセルであり、$ 3:$ A $ 20がチェックする範囲です。
終わり!範囲(正確な一致)に存在するすべての値が強調表示されます。
部分的に一致する値を強調表示するには、以下に示すような式を変更します - ルックアップ値リファレンスの両側にアスタリスクを連結します。
=MATCH("*"&C3&"*", $A$3:$A$20, 0)
=COUNTIF($A$3:$A$20, "*"&C3&"*")>0
ヒント。同じ式をGoogleシート条件付きフォーマットで使用して、Googleスプレッドシートの範囲で正確または部分的な一致を強調することができます。
これで、列、行、または範囲に値が存在するかどうかを確認するための知識とスキルが装備されています。読んでくれてありがとう!
Excel(.xlsxファイル)の範囲に値が存在するかどうかを確認しますGoogleシートの範囲で値が存在するか(オンラインシート)
以上がExcelおよびGoogleシートの範囲で値が存在するかどうかを確認しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。