• ベストアンサー

csvのデータを利用したい

csvファイルからスタッフのスケジュール表を 作りたいと考えています。 縦にスタッフ名を、横に時間系列を並べて、 業務している時間に横棒グラフを表示して、 この棒グラフ内には現場の名前を入れたいと思います。 csvには、 スタッフ名、勤務開始時間、勤務終了時間、現場名があります。 このような場合、excelとaccessどちらが最適でしょうか? また、フリーソフト等がありましたらご教授下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.3

エクセルで、概略的にテストして出来そうと言う結論までは得ました。ただし細部の仕様で出来ない部分が発見され、その点が必須で、全体を諦めざるを得ない場合もあり得るかとは思います。 (1)Csvファイルをエクセルへ読みこんでA2:D2に、データ 山田 9:30 16:30 新宿 とあるとします。第1行目からよみこまれたら、最初行の上に、行挿入をしてください。第3行目以下は省略。 (2)第1行目のE1:Y1に時刻刻みを30分間隔で入れます。y1は19:00で止めたからそうなっただけ。 E1に9:00、F1に9:30と入れ、E1:F1を範囲指定して Y列まで引っ張り、オートフィル機能で、30分刻みの時刻が第1行目に入ります。スタート時刻、終り時刻は会社の実態で適当に決めてください。 (3)B2:C2の間のセルに、相当する時間帯のセルに色をつけます。 「書式」「条件付き書式」の「式が」を使います。 (4)まず色を着けるかもしれないセルE2:Y2(全時間帯)を範囲指定します。(E2をポイント、SHIFTをおさえ、Y2をポイントでその間のセルが黒転換)。ここが大切です。「条件付き書式、式が」では、関数式を入れますが、普通の関数式と違って、式複写の操作は無く、代わりに複数セルを指定して式を入れて、関数式の複写をさせる機能がこめられているからです。(この点は、本には解説をみたことが無く、自己習得点です) (5)「書式」「条件付き書式」の画面で、条件1の下の左のボックスの▼をクリックして、「式が」を選びます。 右側のボックスに関数式を入れますが、普通の関数式とやや異なった点があります。 まず意味的には=IF(・・・)なんですが、すべて「条件付き」を問題にしているため、IFは要らず =AND(E1>=$B$2,E1<=$C$2)と入れます。 意味はE1の値(時刻値。24時間を1とする数値)がB2セル(始業時刻)より大(後)で、且つ(AND)またC2(終業時刻)より小(前)ならば、以下で指定する書式を設定せよと言うことです。 (6)「書式」はセルに色をつける「パターン」の方を選び、色パレットで色を選んでOK。「条件付き書式」の画面のOK。 これで9時30分のF2セルから、16時30分のT2セルまで色がつきました。 (7)後は時刻区切りとの関連の端数をどうするかの問題があります(また時刻刻みを15分や10分単位にするなど)が取りあえず出来そうと言うこと上げます。 (8)就業場所の表示は、このあと考えます。 棒グラフ内(中央?)と言うことで、ちょっと手強そう。

noname#12381
質問者

お礼

とても詳細に教えて頂きありがとうございました。 かなり、希望通りの物になりそうです。 ありがとうございました。

その他の回答 (4)

  • dump
  • ベストアンサー率50% (2/4)
回答No.5

スタッフ名、勤務開始時間、勤務終了時間、現場名から横棒グラフ というご希望で仮に作ってみました。 どのセルに何という表記が煩雑だったので画像作成しました。 (下記URLをご参照ください) 毎日作成するとなると骨だと思いますが... フリーソフトは「シフト表」等で検索をかけるとヒットすると思います。 ご参考まで。

参考URL:
http://2.csx.jp/users/tester/
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.4

#3です。2回に別れて済みません。 「現場」名を着色セル帯の中央セルに表示する件の回答です。 私の(#3の)例でE2に =IF(AND($B$2+($C$2-$B$2)/2>D1,$B$2+($C$2-$B$2)/2<F1),$D$2,"") といれY2まで複写します。この例では、M2セルに「新宿」と入ります。$がついたところは$は必須です。

  • Hageoyadi
  • ベストアンサー率40% (3145/7860)
回答No.2

ガントチャートですね。 「Excel ガントチャート スケジュール」 などで検索をかけるといくつか引っかかります。 *.csvファイルからガントチャートを自動的に作成する機能まで実装しているものがあるかどうかはわかりませんが、Excelマクロを使用してガントチャートを一から作る様子を解説したページがあります。 http://homepage3.nifty.com/shinob/ フリーソフト/シェアウェアなら有名どころは 「がんすけ」でしょうか。 http://www4.ocn.ne.jp/~izu1/software/gunsuke.htm 多機能すぎてわたしはたぶん使いこなせてませんけど。

noname#9284
noname#9284
回答No.1

スケジュール表、シフト表はなかなか難しいものがありますね。 取り決めが次のようであると仮定して簡単な表を作成され、どの箇所をどのように改良して行かれたいか教えていただけないでしょうか。 1.Excelで作る 2.開始、終了が日をまたがない 3.昼休みはかならず1時間とする 4.時間の区切りは30分単位とし、開始も終了も17:00のような形式になっている 5.A列から右にスタッフ名、勤務開始時間、勤務終了時間、現場名が入力されているものとする A2から下にスタッフ名が並び B1から右に開始 終了 現場名 時間 F1とG1に 7:00 7:30 と入力し、この2つを選択して右にフィルしてAN1が0:00になるまで埋めます。 E2に =C2-B2-"1:00" と入力します。 T2に =D2 と入力します。 F1を選択して書式→条件付き書式 で数式がの所に=(F$1>=$B2)*(F$1<=$C2)と入力し 書式ボタン→パターンタブで何か色を設定してOK。またOK。 このセルを右端まで書式のコピーをします。 F1:AN1を、下にコピーします。

関連するQ&A