dポイントプレゼントキャンペーン実施中!

運送業務の一日分の日報を一本の帯グラフの作成です。
横軸が時間で、6:00~6:00まで(24時間)
表に、例えば7:00~8:00積み下ろし作業、8:00~8:30移動等の時間を打ち込むと
それが帯グラフになる。
というようなことは
エクセルで可能でしょうか?

積み上げグラフで作成しましたが、行/列の切り替えで一本にはできますが、表示がおかしくなります。

違うやり方でも、何か方法を教えてください。

A 回答 (1件)

こんにちは



イメージがよくわかりませんが、グラフやチャートと言うよりも、時間割(予定表?)で同じ作業内容ごとに色分けがされているものかなと解釈しました。
エクセルの基本的な機能だけでもできそうなので、原理だけの簡単なものを作成してみました。
(解釈が違っているところは、適当に修正願います。)

添付図の、①②が入力用の欄で、①は時刻のシリアル値、②は入力規則で下の③のリスト内容から選択するような仕組みにしてあります。
③は作業リストの表で、条件付き書式で作業名によって背景色が変わるように設定してあります。

④⑤がこれを横長の時間割風にしたもので、単位時間(添付の場合は30分)を1セルに当たるようにしています。
④の欄には、対応する時刻のシリアル値を入力。書式で時間のみを表示するようにし、条件付き書式で00分以外のものは非表示になるように設定。
⑤の部分の各セルにその時間帯の作業名を取得する仕組みとして、E4セルに
 =VLOOKUP(F$3,$B$3:$D$9,3,0)
の式を設定し、オートフィルしています。
(開始時刻しか参照していないので、飛んだ時間帯があっても、適当に埋められちゃいます)
実際には、作業名が表示されるとうるさいので、⑤のエリアはユーザ書式で何も表示されないように設定してあります。

以上で仕組みは終了。
⑤のエリアに、③の条件付き書式をそのまま拡張してあげると、作業別に色分けして表示されます。
添付の図では、作業が変わるところに縦線を入れるために、⑤のエリアの条件付き書式に
 =E4<>F4 の条件でセルの左側に罫線を引くように設定してあります。

添付のサンプルは原理だけのものなので簡略化してありますが、こんな感じでできるのではないでしょうか?
サンプルは6:00~18:00までで時刻が昇順になているので、そのままVLOOKUPでうまくいきますが、ご質問では6:00~6:00までなので、そのままではうまくいきません。
とは言え、24時間なので、上の原理を利用して内部計算では-6時間してあげることにして、0:00~24:00に換算することで、同様の仕組みが利用できるものと思います。


もしも、質問者様がVBAを利用できるのであれば、①、②の表から直接⑤の塗り分け図を作成することも可能です。
こちらの方法であれば、単位時間を1セルにするなどの必要はなくなるので、シームレスに対応可能になります。
方法としては、同様にセルの背景色を利用することもできますが、図形(矩形)に塗り色を付けたものを該当する位置に置いていくという考え方の方が簡単ではないかと想像します。
手順としては、①の開始時刻と終了時刻の差分を幅とする図形(矩形)を作成し、開始時刻に相当する位置にその図形をセットすることを繰り返すだけで済みます。
色付けは②の作業名に合わせて行えば良いですね。
「エクセル2016 日報を帯グラフにしたい」の回答画像1
    • good
    • 2

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!