Excel。18時以降のデータがわかるように行全体を塗りつぶしたい
<条件付き書式>
退勤時間が18時以降のデータがわかるように行全体をぬりつぶしたいと考えたのですが、条件式に18:00と設定しても、うまくいきません。
どのようにしたらいいのでしょうか。
下記の表を用意しています。
C列の退勤時間が18時以降のデータがあれば、行全体を塗りつぶしたいので、使うのは、ホームタブにある条件付き書式。
あとは条件式をどうつくるかですが、「C2>=18:00」とすれば解決しそうに思えますね。
では、設定していきましょう。
A2:C6を範囲選択します。
ホームタブの条件付き書式から「新しいルール」をクリックします。
新しい書式ルールダイアログボックスが表示されます
「数式を使用して、書式設定するセルを決定」を選択します。
条件式に、
=$C2>=18:00
と設定したら、書式ボタンをクリックして、塗りつぶしたい色を選択します。
OKボタンをクリックします。
数式に問題があると、メッセージが表示されてしまいました。
どうやら、18:00ではダメなようですね。
そこで文字列の”18:00”としてみるとどうなるでしょうか。
条件式は、
「=$C2>=”18:00”」
OKボタンをクリックします。
メッセージは表示されていませんが、肝心な18:00以降のデータには、何もリアクションがありません。
原因は、C列の退勤時間。
時間ということですから、シリアル値が表示形式で日付に化けたというか、数値が日付形式で表示されているだけです。
ダブルコーテーションでカッコってしまった文字列と化した、”18:00”のほうが、大きいので、思ったようにリアクションしてくれなかったというわけです。
では、”18:00”を時間にするために、HOUR関数とかを使う必要があるかといえば、ちょっと条件式を修正するだけで解決します。
では、改めて、ダイアログボックスを表示しましょう。
=$C2>=”18:00”*1
と「*1」を追加します。
たったこれだけです。
修正が終わったらOKボタンをクリックして確認してみましょう。
18時以降のデータの行全体を塗りつぶすことができました。
なんで「*1」をつけたら大丈夫になったのかというと、文字は文字でも数値文字型(文字数値型)に変えることができ、型が同じになったので、条件式が成立したという仕組みです。
なお、面倒な場合は、別セルに時間を入力し、そのセル番地を”18:00”の代わりに使えば、何ら問題はありません。







