Excel(エクセル)の操作が楽になる方法と便利な使い方を紹介しています。


menu

Excel(エクセル)が楽で便利になる方法

Excelで「指定した文字を含む」行にマークをつけてわかりやすくしたい!IF関数とCOUNTIF関数

[ この記事の内容は Excel2013 でも使えます ]
 
「指定した文字」がある行にマークをつけてわかりやすくしたい!IF関数』記事では、「SONY」などの文字が入力されている行にマークをつける方法を紹介しました。
 
「SONYという文字のセル」ではなく、「SONYという文字が含まれるセル」でマークをつけたい場合、どうすれば良いでしょうか?
 
そんな時は、IF関数COUNTIF関数を組み合わせると良い感じにできます。
 

スポンサーリンク

設定方法

この一覧で「田」を含む行に○マーク、含まない行に×マークを付けてみましょう。
 
 
 
  1. マークを表示したいセルで、

    =IF( COUNTIF(A4,”*田*”)>0 , “○”,”×” ) と入力する。 

    ちょっとわかりにくいですので、次の 2. で説明します。 
     
    とりあえずここは、この通りに入力してくださいね。 
     
  2. 1.の説明です。
    関数が長くてわかりにくいですので、COUNTIF関数のところを「条件式」に変えてみました。 
    = IF( 条件式 , “○”,”×” )
     

    ちょっとすっきりしましたね。

    IF関数は、指定した条件が「一致する場合」と「一致しない場合」で、セルに表示する内容を変えることができます。 

    表示したい内容は、○と×ですね。

    ここで「=IF( A4=”*田*” ,”○”,”×”)」 としたいところですが、IF関数は 「*(アスタリスク)」 が使えないようです。残念。 
     
    仕方がないので「*(アスタリスク)が使えるCOUNTIF関数」を使いましょう。 

    これを条件式につかうのがポイントです!

    COUNTIF関数は、「条件を満たす」セルの件数を数えることができます。 
     
    ということは、COUNTIF(A4,”*田*”)>0 としておけば、 
    「田」を含むセルがある = 件数が1件 = 1は0より大きい = 条件に一致する
    「田」を含むセルがない = 件数が0件 = 0は0より大きくない = 条件に一致しない 
    という結果になりますので、○と×が表示されることになります。
     
  3. Enterキーを押すと「×」が表示されました!
    ここの氏名(紺野 さゆり)には「田」が含まれませんので、×で正しいですね。 
    他の行にもコピーしておきましょう。 
    「田」を含む行に、きっちりと「○」がつきました!
     

まとめ

1つの関数でできないことも、複数組み合わせれば実現できましたね。
便利です。
 
一度、お試しくださいね。
 

スポンサーリンク

コメント

  • トラックバックは利用できません。

  • コメント (2)

    • YUUKO26
    • 2016年 11月 14日

    初めまして。まさに求めていた計算式でしたので、感動のあまりコメントさせていただきました!
    本当にありがとうございます^^

    ちなみに、こちらの式ですが、
    こちらの式でいう【田】の部分の項目が2つ存在する場合、どのような式にすればよろしいでしょうか?

    詳しく例を申し上げますと、ある列に田と子がある場合は○と示し、該当がなければ空欄としたい。。というかんじです。もしお教えいただけるようであればよろしくお願いします><

      • だーしゅ
      • 2016年 11月 14日

      YUUKO26さん、コメントありがとうございます。

      求めていた計算式があって良かったです。

      >こちらの式でいう【田】の部分の項目が2つ存在する場合
      ですが、COUNTIFS関数を使うと良いです。

      COUNTIF関数に「S」が付いただけですが、
      複数の項目を扱うことができます。

      例えば、
      =COUNTIFS(A4,”*田*”, A4,”*子*”)>0
      とすると、「田」と「子」がある場合、TRUEになります。

      これを使って、該当がなければ空欄、であれば、
      = IF( COUNTIFS(A4,”*田*”, A4,”*子*”)>0, “○”,”” )
      という感じですね。

      式が分かりにくくなった時は、
      一度、分解してみると良いですね。

だーしゅ
IT関係のお仕事してます。
Excel大好き。

[当ブログについて]

最近のコメント

  • kongaragatta { だーしゅさん、ご返事ありがとうございます。 まずは、だーしゅさん案で自分なりにできるかどうかトライしてみます。 } – 7月 03, 6:35 AM
  • だーしゅ { 言葉が良く無かったですね。 「O列がFOR文の最初の位置になる」のような意味でした。 実現するにはいろんな方法があると思います。ご参考まで。 } – 6月 29, 5:37 PM
  • kongaragatta { だーしゅさん、案をありがとうございます。 なるほど!月数を取得するやり方は考えていませんでした。やはり自分だとスキルに限界があるのでどうも柔軟に考えにくいですね。 ひとつ質問ですが、「O列を起点とし、年月を固定的に設定」の”固定的に設定”とはどのように設定するということでしょうか? } – 6月 29, 8:04 AM
  • だーしゅ { kongaragattaさん、コメントありがとうございます。 いろんな方法があると思いますが、思いついた案を書いておきますね。 ・DATEDIF関数で開始年月日と終了年月日の月数を取得 ・O列を起点とし、年月を固定的に設定 ・FOR文で「月数」の数分、セルを右方向に移動 →開始日と同じ年月の場合、●を表示 →IF文で一つ目と判断した場合、〇を表示 →3ヵ月単位はMOD関数で判定 いろいろお試しくださいね。 } – 6月 28, 4:59 PM
  • kongaragatta { だーしゅさん、こんにちは 現在、手作業でExcel作表しているものを少しでも自動化したいと考えています。但し、VBAやマクロは初心者のため、だーしゅさんに是非アドバイスやお力添えをいただければと思います。 L列:開始年月日(原則、当該月の1日)、M列:終了年月日(原則、開始年月日より2年後の月末)、O列~:L列の開始年度及び1~12月の各列があります。L及びM列は、更新されます。 全体件数としては、250件程度。 L列の開始月をキーにO列以降の3か月ごとに黒丸の記号を入力したい。但し、初回の月は、白丸の記号。たとえば、開始年月日が2018/6/1ならばO列には2018年度の6月列に白丸の記号がつき、9月列及び12月列、翌年の2019年度3月に黒丸記号のように、それがM列の終了年月日まで表示したい。 何か良い案があったらご教示ください。よろしくお願いします。 } – 6月 28, 6:11 AM
  • MIZUMIZU { だーしゅさん ご連絡ありがとうございます。こちらで試してみます。また解らないときはご連絡いたします。お手数をお掛けいたします。 } – 6月 04, 2:23 AM