Categories: ツール・アプリ

スプレッドシートの条件付き書式「カスタム数式」でセルや文字色を変更する方法

スプレッドシートの条件付き書式で、文字列の部分一致やOR条件でセルや文字の色を変更する方法を解説します。
(実際に作成したスプレッドシートを公開しています)

※記事内の「関数」は小文字で記載していますが、大文字でも問題ありません。

カスタム数式で「COUNTIF」を使って指定する

「COUNTIF」は、その名のとおり、以下のように、条件に該当するセルをカウントする際に使う関数ですが、「条件付き書式」のカスタム数式内でも利用できます。

特定セルに○の文字を含む場合

以下は、F列に◯の文字を含む場合、行ごと緑の背景色にする場合の条件付き書式です。

=countif($F2, "*◯*")
  • *(アスタリスク)はいわゆるワイルドカード、「あらゆる文字」を示しています。
  • $は絶対参照、この数式が別のセルに移動しても、$がついている行または列は参照し続けます。

特定セルに○の文字を含まない場合

今度は逆に、F列に◯の文字を含まない場合、行ごと灰色の背景色にする場合の条件付き書式です。

=countif($F2, "<>*◯*")
  • 不等号をあらわすを*◯*の前に付与します。

数式に直接文字を記載せず特定のセルを指定する場合

直接文字を記載せず、セルを指定する場合は(ここでは$A$1)、ダブルクオーテーションでかこった*を、&で繋ぎます。

=countif($F2, "*" & $A$1 & "*")

ORを使って「いずれか」の場合を指定する

「OR」関数を「COUNTIF」関数と組み合わせることで、以下のような条件付き書式が指定できます。

【OR関数単体の使用例】E2が10以下またはF2が20以下の時を指定

=or($E2<=10, $F2<=20)

E列かF列のどちらかのセルに×の文字を含む場合

以下は、E列かF列のどちらかのセルに×の文字が含まれる場合に、行ごと赤の背景色にする場合の条件付き書式です。

=or(countif($F2,"*×*"),countif($F2,"*×*"))


以上、スプレッドシートの「条件付き書式」で、カスタム数式を使って、文字列の部分一致やOR条件でセルや文字の色を変更する方法を紹介しました。

実際に作ったスプレッドシートはこちらで、どなたでも実際に編集できるシートと保護シートを一般公開しています。


(複数の条件付き書式を同じセルに指定している場合、上にある条件ほど優先されます)

ちなみに、「COUNTIF」と「OR」のいずれの関数も、Excelで同様に使用できます。

参考にさせていただいた記事
関連記事
平野 ジュンヤ

Webサービスやツールをつくったり、マーケティングをしたり、コアラを愛でたりしているWebディレクター兼コンサル。

View Comments

  • Googleスプレッドシートのカスタム書式設定を調べてここにたどり着きました。
    実際に作ったスプレットシートは非常に参考になりました。

    サンプル(編集可)のシートで都道府県の条件付き書式設定を誤って消してしまいました。
    記憶を辿って修復を試みたものの上手くできませんでした。

    本来はシートをコピーするべきでしたがそのままシートを編集してしまい申し訳ありませんでした。
    ご対応をよろしくお願いいたします。

    • >ひろしさん

      問題ないですよ、報告ありがとうございます!
      (都道府県の条件付き書式設定は私は作った憶えがないので、別のどなたかが作成されていたのだと思います)

      一応元に戻しておきました!

  • スプレッドシート初心者です。
    転職先でシフト表管理を任されることになりました。
    質問なのですが、カスタム数式をコピーする時にセルの数字だけを変えて列または行にダーッとコピーすることはできないのでしょうか?
    数式「=AND(COUNTIF(C3:G3,"*出*")>0,COUNTIF(I3:W3,"*退*")>0)」の
    ・列にコピー→アルファベット
    ・行にコピー→数字
    に変わってほしいのですが…。
    説明がわかりづらかったらすみません。

    • >しののめさん

      おそらく「フィルハンドル」が希望されている動作を実現する機能かと思います。
      一度、「フィルハンドル」でGoogle検索してみていただければ!

Share
Published by
平野 ジュンヤ