• 締切済み

アルバイトのシフト表作成及びガントチャート作成

大変すみませんが、現在、コンビニのアルバイトのシフト表をExcleで作成 しようとしておりますが、うまくいきません。 どなたか、以下のような形態で作成できる方式などをお教えいただけないでしょうか? シート1には (1)縦に氏名、横軸に、1ヶ月あたりの日にち(ただ、この日にちはA1セルに月を入力  したら、自動でその月の日にちになるようにしたい) (2)このシートにアルバイト者単位で、希望する時間帯を入力させます。   シート2には、シート1で入力した、ある日にちを選択すると、その日だけ入っている アルバイト者名および勤務時間帯を、ガントチャート形式で表示できるようにしたい。 意図は、その日のシフト人数が時間帯別で見たときに、足りえているかを把握したいため です。 このようなシフト表を教えていただけないでしょうか?

みんなの回答

  • mr_2kasa
  • ベストアンサー率0% (0/0)
回答No.3

エクセルで勤務シフトを作成するのであれば、こちらはどうですか? http://excel-template.jp/article/353095524.html

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

初めに月や日にちの入力は2012/8/27のように入力して「セルの書式設定」から「表示形式」の「ユーザー定義」で好みの日付表示することがよいでしょう。 そこで表の作成ですがシート1は次のようにします。 A1セルには今年の8月の表でしたら2012/8/1と入力し、セルの表示形式で ggge年m月 のようにします。 B1セルには次の式を入力して右横方向にBKセルまでドラッグコピーします。 =IF(OR(MOD(COLUMN(A1),2)=0,MONTH(DATE(YEAR($A$1),MONTH($A$1),ROUNDUP(COLUMN(A1)/2,0)))<>MONTH($A$1)),"",DATE(YEAR($A$1),MONTH($A$1),ROUNDUP(COLUMN(A1)/2,0))) 1日当たり2列を使っています。それはアルバイトの開始時間を前列に終了時間を後列に入力できるようにするためです。 B1セルからBK1セルまでを選択してセルの表示形式で d日(aaa) のようにします。これでB1セルには1日(水)のように表示されます。なお、式では月の末日までが表示されます。 次にA2セルには氏名の文字を入力します。 B2セルには次の式を入力してBK2セルまで横にオートフィルドラッグします。 =IF(AND(A$1="",B$1=""),"",IF(MOD(COLUMN(A1)-1,2)+1=1,"開始","終了")) これでその日のアルバイトの開始時刻と終了時刻を入力する項目名が表示されます。 A3セルから下方にはアルバイト者の氏名を入力し該当する非の開始時刻と終了時刻を9:00のように入力します。入力は30分単位で行います。 シート1に入力されたデータをもとにガントチャートを作成するためにシート2では次のようにします。 表示させたい日付をA1セルに例えば2012/8/27のように入力します。日だけの表示にする場合には表示形式で d日(aaa) のようにしてもよいでしょう。 B1セルから横方向には30分ごとの時刻が並ぶようにします。例えばB1セルに9:00と入力しC1セルには9:30と入力します。B1とC1セルを選択してから横方向にドラッグすれば30分ごとの時刻が表示されますね。 そこでA2セルから下方にはA1セルで指定された日付でのアルバイト者の氏名を表示させるわけですが、そのための式は複雑になりますのでシート1のBLセルには作業列を作って対応することにします。 シート1のBL3セルには次の式を入力しえ下方にドラッグコピーします。 =IF(A3="","",IF(INDEX(B:BK,ROW(),MATCH(Sheet2!$A$1,B$1:BK$1,0))="","",MAX(BL$2:BL2)+1)) これでシート2のA1セルで指定された日付における該当者に上から番号が付けられます。 この番号をもとにしてシート2での作業を進めます。 シート2のA2セルには次の式を入力して下方にドラッグコピーします。 =IF(ROW(A1)>MAX(Sheet1!BL:BL),"",INDEX(Sheet1!A:A,MATCH(ROW(A1),Sheet1!BL:BL,0))) 次にガントチャートを作るための作業ですがB2セルから1行目で時刻の入力された最終列から下方の適当なセルまでを範囲としてして選択します。 その上で「ホーム」タブの「条件付き書式」をクリックして「新しいルール」を選択します。 「数式を使用して…」にチェックをしてから下の窓には次の式を入力します。 =AND(B$1+0.001>=INDEX(Sheet1!$B:$BK,MATCH(ROW(A1),Sheet1!$BL:$BL,0),MATCH($A$1,Sheet1!$B$1:$BK$1,0)),B$1+0.001<INDEX(Sheet1!$B:$BK,MATCH(ROW(A1),Sheet1!$BL:$BL,0),MATCH($A$1,Sheet1!$B$1:$BK$1,0)+1)) かなり長い式ですのでどこかのセルに式を入力してからそれをコピーして条件付き書式の窓に貼り付けをすればよいでしょう。 その後に「書式」をクリックして「塗りつぶし」のタブで赤色などを指定してOKします。 これである時間帯における重なりなどを見ることができますね。

回答No.1

これはどうです? かなり近いと思いますが その名も「ふりーシフト君」 http://mt-soft.sakura.ne.jp/web_dl/free_shift/

関連するQ&A

  • Excelでのガントチャート形式の作り方

    Excel2007で、月間のシフト表を作成済みなのですが、 この月間表をもとに、ある日にシフトが入っているものの時間帯と氏名をガントチャート形式で 表示したのですが、どうしても、うまくいきません。 参考に月間シフト表は以下の通りです。 A1セルには2012/8/1と記入 B2セルには氏名(縦軸に氏名を並べております) C2セルには出勤時間 C3セルには退社時間 D2セルには、日にちを横軸に展開しております。 D4セルには、曜日を横軸に展開しております。 この月間表をもとに、日にちにより、シフトに入れる人は、まちまちですが、 入っている人とシフト時間を抽出して、ガントチャート形式で表示できるような、関数を お教えいただけないでしょうか?

  • EXCELでの月別 日別の勤務表同時作成について

    現在、EXCEL2007にて、シート1には月別のシフト表を年と月を変えると自動でその月の日にち、曜日も変わるように作成しております。縦軸には氏名、横軸には日にち、曜日を並べており、縦に各人の出勤、退社を記入させるように作成しております。このシート1をもとに、別シートで日にちを選ぶと、その日に入っている氏名と勤務時間をガントチャート形式(時間帯別)で、自動的に表示作成できるようにしたいのですが、関数がわからず、現在、苦戦しております。 どなたか、月別勤務表から、その月のある日にひ分だけを抽出し、その日に入っている者のシフト時間を表示できるようにするための方法を教えていただけないでしょうか? シート1のサンプル  ××××年××月          1日 2日 3日 4日・・・・          月  火  水  木・・・・・    A君 出勤  9:00     退社 12:00 B君 出勤  10:00     退社  19:00 上記のような表で、たとえば、1日(月)にシフトに入っている者だけを抽出し、別シートで 日別のガントチャートを作成したいです

  • Excelでの日別ガントチャート作成方法作成

    Excel2007を使用してシート1では以下のような月次勤務表を作成しております。このシート1の月次の勤務表は縦軸に30人ほどの氏名、横軸に日にちを展開しております。この表をもとに、8/1に勤務するものをピックアップして、シート2でガントチャートを作成したいのですが どなたかご教授いただけないでしょうか? なお、月次勤務表の横軸の日付と曜日は、月が変われば、自動で変わるように作成しております。 月次勤務表例(シート1)      A列   B列  C列      D列   E列    F列    G列・・・・・・・・・AG列 1行目 2012年8月 3行目 No 氏名 種別 1 2 3 4・・・・・・・・・・・・31 4行目           水 木 金 土 5行目 1  A氏   出勤    9:00          11:00 6行目          退社 17:00       16:00 7行目         休憩 0.5 0.25 8行目         実働 7.5 0.00 4.75 0.00 9行目 2       B氏   出勤    9:00    10:00       ・              退社 17:00 15:00       ・            休憩 1.0 0.25 ・            実働 7.00 4.75 0.00 0.00 この月次シートから、別シートに例えば、8/1に勤務するものと、その時間帯をガントチャート形式 で表示するための関数をご教授いただければ幸いです。

  • Visio ガントチャートでの24時間表示?

    ガントチャートで一日のタイムテーブルを作成しているのですが、 AM、PM共に1~12で表示されてしまい、少々見づらく感じてしまいます。 ガントチャートにて24時間表示にすることはできるのでしょうか?

  • エクセルでガントチャートできる?

    教えてください。 エクセルのSheet1の A列に製品名 B列に製造開始日 C列に製造完了予定日が記入してあります。この一覧表でよいのですが、上司から「D列以降に見て分かるようにガントチャートみたいに色付きで表示できないか?そして、開始日や予定日の変更をした場合、ガントチャートも自動に変更(伸び縮み)ができるように」といわれ 色々探したのですが、専用のソフトは有るようですが、エクセルにこだわらなくてはならないので知っている方教えてください。

  • エクセルでガントチャートの作成 横軸設定について

    エクセルで、作業工程(縦軸)毎に 掛かった時間(秒数)を横軸に表示させるガントチャートを 各種ホームページを参考にしながら作成しています。 一般的なガントチャートは日付での表示の為 1日~31日分のセルでいいのですが 作りたいものが秒数で、1~1800秒等と値が大きく、 横軸のセルが足りなくなった為、 下記の方法で作成してみました。 REPT関数で =REPT(" ",(B8-MIN($B$8:$B$22))) &REPT("▮",(C8-B8+1)) &REPT(" ",(MAX($C$8:$C$22)-C8)) この場合だと、数値が大きくなるほど、横軸も長くなり、 A41枚で印刷する為には縮小しなくてはなりません。 また、横軸に目盛がなく、別途入れなければなりません。  (オートシェイプで線を作って表示していますが、  表示倍率をへんこうするとずれて表示されてしまいます) 横軸の長さ(秒数)をA4用紙1枚に納める為、横軸の長さを指定して 尚且つ、目盛りを入れる方法、また、縮小表示や縮小印刷したときに ずれない方法はあるのでしょうか。 また、これらの内容をエクセルで表示させるのに  他によい方法がありましたら教えて頂けないでしょうか。

  • シフト表作成

    アルバイトや社員の勤務時間を入力するシフト表を作成しようと思ったのですが、機械にうといためできませんでした。そこでシフト表をダウンロードできるサイトを知っている人、もしくは、シフト表を持っていてそれを私にあげてもいいという人がいましたらご協力おねがいいたします。  ・横棒グラフ ・縦に名前が入力できて、横が30分ごとに区切れる時間 ・一番下には総人数、総時間が自動計算で記載される というスタンダードなものです。うまく説明できなくて申し訳ございませんが、よろしくおねがいいたします。

  • 仕事でシフト表を作成しています(エクセル)

    仕事でシフト表を作成しています シート1(データーベース)に入力した時間の所のサービス内容により、日にちごとに分けたシートの時間の所のセルの色が変化するようになっています そのセルに更に利用者の文字を自動的に表示する方法が分かりません どのようにすれば出来るのでしょうか?

  • ガントチャートの1日版を作りたいのですが

    ガントチャートの1日版を作りたいのですが 製造工程毎にかかった時間を記入し、ガントチャートのようなものを作りたいと思います。 説明が難しいので手書きの画像を載せておきます。 http://excel-master.net/graph/gantt-chart/ 上記のようなものは出てくるのですが、どれも時間軸が日となっております。 自分は時間軸を分にしたいのですが、どのようにすればいいのか教えて頂けませんでしょうか? Excelでは難しい、または他に楽に作れるフリーソフトなどありました時はそちらも教えて頂きたいと思います。 宜しくお願い致します。

  • シフト管理表の作成でわからないことが・・・

    エクセルの関数やマクロはほぼ初心者で、わからないことだらけなので教えてください。 シフト管理表で、半月ごとのシフト表(作成用)で、日単位のシフト表(自動作成)が出来るようにしたいのです。 半月シフト      a     b    c     d     e  ・・・(人) 1/1 1~5        2~3        2~5 1/2 1~5   2~5        2~3 1/3 2~5   1~3  2~3 上記ように作成したら日単位で 1/3 b 1~3 l c 2~3 l a 2~5 l のように日単位で別シートに自動作成できるようにしたいのです。 (dとeは日単位には表示されずに、出勤者のみ時間が早い順に表示) フォーマットは決められており、現在手入力の為ミスが多く時間もかかり・・・ わかりにくかったらごめんなさい もしかしたら簡単かも?しれないけどまったくわからないのでお願いします。

専門家に質問してみよう