プロが教えるわが家の防犯対策術!

●● 20140901
●● 20140905
●● 20140908
●● 20140912
●● 20140919
●● 20140922
●● 20140926
●● 20140929

上記は、「●●さんが毎週月・金出席予定だったのに、9月15日は休みました。」
ということがわかるデータなのですが、これをパッと見てわかりやすくするためのカレンダーを作成したいです。

他にもXXさんは火・金・土出席予定、□□さんは月・火・水出席予定、、、等データはたくさんありますので●●でソートして、●●さんだけの出席日データを抽出したいと思います。

これまでは、上記データを抽出し、手入力で作成した9月のカレンダーに、手で色づけをし、15日は祝日だったので休んだのかなぁ、という様な分析をしていました。

お知恵をいただけませんでしょうか。
宜しくお願い致します。

A 回答 (2件)

こんばんは!



>これをパッと見てわかりやすくするためのカレンダーを作成したいです。
というコトですので、一案です。

具体的なカレンダーのレイアウトが判らないので勝手にやってみました。
↓の画像で左側が元データのSheet1、右側がカレンダーのSheet2とします。
Sheet2のC2セルに検索したい人の氏名を入力するとその人の1ヶ月分の「出」の日が表示されるようにしてみました。
Sheet1のデータはバラバラでも構いません、B列はシリアル値になっているとします。

まずSheet2のA1セルに西暦年・A2セルに月の数値を入力します。
そして、D1セルに
=DATE(A1,A2,1)
という数式を入れセルの表示形式はユーザー定義から mmm としています。
(その月の1日のシリアル値が必要なため)

Sheet1のD列を作業用の列としています。
作業列D2セルに
=IF(A2=Sheet2!$C$2,B2,"")
という数式を入れフィルハンドルでずぃ~~~!っと下へコピーしておきます。

Sheet2のA5セル(セルの表示形式はユーザー定義から d としておく)に
=IF(MONTH($D$1-WEEKDAY($D$1)+COLUMN(A1)+7*(ROW(A2)/2-1))=$A$2,$D$1-WEEKDAY($D$1)+COLUMN(A1)+7*(ROW(A2)/2-1),"")
A6セルに
=IF(OR(A5="",COUNTIF(Sheet1!$D:$D,A5)=0),"","出")
という数式を入れ A5・A6セルを範囲指定 → A6セルのフィルハンドルで土曜の列までコピー!
そのまま(2行が選択されたまま)下へ2行ずつコピー!
これで画像のような感じになります。

※ セルの左上に表示されているエラーオプションのマークが目障りであれば
Excel2010の場合
メニュー → ファイル → オプション → 数式 → エラーチェック → 「バックグランドでエラーチェックを行う」のチェックを外しておきます。

※ あくまで一案です。
とりあえず個人のカレンダー表示にしています。
※ 祝日データを作成すればそれを利用することも可能です。

まずはこの程度で・・・m(_ _)m
「【excel】日付データからカレンダーを」の回答画像2
    • good
    • 0
この回答へのお礼

わかりやすいご説明、ありがとうございます。
私の説明不足でしたが、まさにやりたかったことをご説明いただきました!
日付の入力方法が違い少し苦労しましたが、無事手元のデータでもほしいデータができました。
ありがとうございました!!

お礼日時:2014/10/20 13:13

カレンダーまで作るとなると荷が重いでしょうから一案です。



日付は、日付のシリアル値ではなく、8桁の数字で入っているという事で良いですね?
添付の図ではC2セルに↓に式を入れ、下方向にコピーしてあります。
=IFERROR(TEXT(TEXT(B2,"0000!/00!/00")*1,"aaa"),"")

これでC列に曜日が表示されますので、A:C列でフィルターを掛け、名前:●●だけを表示します。
すると、C列が月・金・月・金と並びますが、9/15は休んでいるのでそこだけ金・金と言う並びになるので休んだことが判りやすくなります。
「【excel】日付データからカレンダーを」の回答画像1
    • good
    • 0
この回答へのお礼

早くに回答をいただきましてありがとうございました!
私の説明不足があり申し訳ありません。
カレンダーまで作成していただいたもう御一方をベストアンサーとさせていただきました。

お礼日時:2014/10/20 13:17

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