質問: 開始時刻から所要時間に応じてセルを塗りつぶすには 現在仕事である部門の管理をしていまして、各人の作業工程の時間を視覚的に把握したいと思い、それをエクセルでやりたいと思っています。 考えているのは、開始時刻と終了時刻を入力すると、その開始時刻から所要時間分のセルを塗りつぶすというものです。 たとえば、aさんが8:20から8:27までの作業があったら、8:20から右に7セル分 (1分1セル)を塗りつぶすというものです。 これで各人の作業時間の重複を視覚的に把握したいと思っております。 ガントチャートのようなものですが、さほど凝ったものではなく、簡単な関数で実現できればいいと思っていますが、実際できますでしょうか?
回答: 例えばa1セルに氏名、b1セルに開始時間、c1セルに終了時間の文字が有り、d1セルから右のセルには8:15,8:16・・・のように1分間隔で時刻が入力されているとします。 その上でb2セルに8:20、c2セルに8:27と入力した場合のようにb列およびc列にデータが入力されたら、該当する時刻のところの列に色が付くようにするためには次のようにします。 d2セルから使用する右側の列で2行目から下方のセルまでを範囲として選択します。 「ホーム」タブの「条件付き書式」をクリックして「新しいルール」を選択します。 「数式を使用して・・・・・」を選択して数式の窓には次の式を入力します。 =and(d$1>=$b2-"0:00:01",d$1<=$c2+"0:00:01",d$1<>"") 「書式」をクリックして「塗りつぶし」のタブからお望みの色を設定します。 なお、上の式では0.1秒が追加されたり、引かれたりしていますが時刻の比較などではシリアル値での小数点以下の誤差を解消するために使っています。