IF関数で文字が入っていたら~にする方法|○/計算/表示
ここでは、エクセルのIF関数で「『文字が入っていたら』の条件にし、一致の場合に○、計算、表示する方法」を解説します。
ただし、「文字が入っていたら…」といってもパターンがありますので、それぞれの説明です。
1.「文字が入っていたら…」のパターンとは
一口に「文字が入っていたら…」とは言っても、厳密には4パターンあります。
パターンによって数式の形も変わってくるので、まずはやりたいことがどれに当てはまるかを確認します。
1-1.空白以外
まずは、「文字が入っていたら=空白以外」という場合です。
数値でも日付でも文字列でも、なんでもいいから何か値が入っていれば…という条件にしたい場合には、これにあたります。
上の例は、「A列のセルが空白以外か?」をB列にIF関数を入れて判定したものです。
このように、まずは「なにか入っていたら…」というケースがあります。
1-2.なんでもいいから文字(列)だけ
次に、「文字が入っていたら=なんでもいいから文字(列)だけ」というパターンです。
数値や日付などはダメで、なんでもいいので「文字だけ」という条件にしたいという場合は、こちらになります。
上の例は、「A列のセルが文字列か?」というIF関数の数式をB列に入れ、文字列なら○を、文字列以外なら×を表示したものです。
このように、「文字列かを判定したい」というケースがあります。
1-3.特定の文字(列)だけ
続いて、「文字が入っていたら=特定の文字(列)だけ」というパターンもあります。
指定した文字が入っているかを確認したいという場合は、こちらになります。
上の例は、「A列のセルが『テスト』か?」というIF関数の数式をB列に入れ、真なら○を、偽なら×を表示したものです。
このように、「特定の文字列かを判定したい」というケースもあります。
1-4.特定の文字を「含む」
最後に、「文字が入っていたら=特定の文字を含む」というパターンもあります。
指定した文字が入っているかを確認したいという場合は、こちらになります。
上の例は、「A列のセルに『ス』の文字が含まれているか?」というIF関数の数式をB列に入れ、真なら○を、偽なら×を表示したものです。
このように、「特定の文字列が含まれているかを判定したい」というケースもあります。
2.IF関数で空白以外を判定したい時の数式
始めに、「空白以外」を判定する数式から見てみます。
2-1.「空白以外」という数式の形は
空白以外という論理式の形は、次の通りです。
ポイントは「<>""」のところで、これで「空白以外」という条件になります。
なお、空白以外の時に○、計算、表示させたい時には「真の場合」にその内容を入れます。
数式の例は、次の通りです。
- 〇:=IF(A1<>"","〇","×")
- 計算:=IF(A1<>"",A1*10,"")
- 表示:=IF(A1<>"",A1,"")
2-2.数式の作り方を確認
では念のために、例を使って数式を作ってみます。
上の表のセルB2に、「空白以外なら『〇』、空白なら『×』」という数式を、IF関数を使って作ってみます。
以下、手順です。
(1)セルに「=IF(」と入力し、fxボタンを押す
(2)論理式に判定したいセル番号を入れた後、「<>""」と入力する
(3)真の場合、偽の場合を入れる
(4)OKボタンを押せば完了
後は数式を下にコピーすれば、出来上がりです。
ちなみに数式は、
=IF(A2<>"","〇","×")
となりました。
やはり、「対象セル<>""」で「対象セルが空白以外か?」という論理式になるところがポイントですね。
3.IF関数で文字列か?を判定したい時の数式
次に、IF関数で「文字列か文字列以外か?」を判定する数式を見てみます。
3-1.文字列か?という数式の形は
文字列かを判定する論理式の形は、次の通りです。
ポイントは「ISTEXT(対象セル)*1」のところで、これで「文字列かを判定」できる形になります。
なお、文字列の時に○、計算、表示させたい時には「真の場合」にその内容を入れます。
数式の例は、次の通りです。
- 〇:=IF(ISTEXT(A1)*1,"〇","×")
- 計算:=IF(ISTEXT(A1)*1,B1*5,"")
- 表示:=IF(ISTEXT(A1)*1,A1,"")
3-2.数式の作り方を確認
では念のため、こちらも数式を作ってみます。
上の表のセルC2に、「セルB2の値が文字なら『完了』、文字以外なら『空)』」という数式を、IF関数を使って作ってみます。
以下、手順です。
(1)セルに「=IF(」と入力し、fxボタンを押す
(2)判定したいセル番号を入力する
(3)「)*1,」と入力する
(4)真の場合、「,」をはさんで偽の場合を入力する
(5)Enterを押せば完了
後は数式を下にコピーすれば、出来上がりです。
ちなみに数式は、
=IF(ISTEXT(B2)*1,"完了","")
となりました。
やはり、「ISTEXT(対象セル)*1」で「対象セルが文字か?」という論理式になるところがポイントですね。
3-3.この数式は「範囲」の指定も可能
この数式は、「1つのセルに対してだけではなく、複数のセルに対しても判定が可能」です。
やり方は「ISTEXT関数で指定する値を範囲にする」だけです。
例えば先ほどの例の延長で、セルC2からC4の3つのセル全てに文字列が入ったら~という論理式にしたい時、数式は、
=IF(ISTEXT(C2:C4)*1,"全完了","")
となります。
このように文字列か?の判定は、1つのセルでも複数のセル(範囲)でも可能なのです。
4.IF関数で特定の文字列を判定したい時の数式
続いて、IF関数で特定の文字列かを判定する数式です。
4-1.「特定の文字列」の指定の仕方
特定の文字列を条件にする場合、IF関数は次のような形になります。
ポイントは、「特定の文字列を『"』で囲むこと」です。囲まないと「#NAME?」エラーになります。
なお、特定の文字列の時に○、計算、表示させたい時には「真の場合」にその内容を入れます。
数式の例は、次の通りです。
- 〇:=IF(A1="テスト","〇","×")
- 計算:=IF(A1="テスト",B1*5,"")
- 表示:=IF(A1="テスト",A1,"")
4-2.数式の例を確認
一つ数式の例を確認してみます。
先ほどの例で、セルC3に入れた数式は次の通りです。
=IF(B3="済","完了","未完了")
IF関数に限らずエクセルの数式で文字列を指定する場合には「"」で囲みます。
そのため、「済」以外の「完了」も「未完了」も「"」で囲んでいます。
5.IF関数で「特定の文字列を含む」を判定したい時の数式
最後に、IF関数で特定の文字列を含むかを判定する数式です。
IF関数を含む条件にする方法は、以下のページで詳しく解説しています。
よかったら参考にしてください。
以上、参考になれば幸いです。
【口コミ・評判のいいExcel本の紹介】
IF関数の、他の記事へのリンクはこちらです。
- IF関数その他の記事へのリンクはこちら
- ◎基本的な使い方
- ◎以上、以下等の比較演算子を使う方法
- ◎日付範囲や期間を簡単に指定する方法
- ◎日付を比較する時の数式の書き方
- ◎マイナスの場合は0、空白と指定する方法
- ◎空白セルを空白にする方法
- ◎#VALUE!等のエラーになる原因と対処法
- ◎結果がうまくいかない時の原因と対処法
- ◎パーセントを条件に指定する方法
- ◎複数条件のORをリストで指定する方法
- ◎曜日の条件指定がうまくいかない場合の対応方法
- ◎空白でもSUM関数でエラーにしない方法
- ◎値があれば、入っていたらの条件にする方法
- ◎範囲全てが条件値と一致するかを判定する方法
- ◎文字が入っていたらの条件にする方法
- ◎空白を判定する方法
- ◎別シートの値を参照する方法
- ◎複数条件を「かつ」で指定する方法
- ◎複数のうちのどれかに合えばとする方法
- ◎セルの値がいづれかの場合真とする方法
- ◎特定の文字列を含む条件を指定する方法
- ◎複数列全てが一致の条件にするテクニック
- ◎複数条件を指定して分岐させる方法
- ◎ROUND関数の正しい組み合せ方