• ベストアンサー

エクセルを使った集計方法

エクセルを使ってデータの管理をしています。 計画と実績のグラフを書きたいのですが、やり方がよく分かりません。 ●生データ エクセルのシートに下記の様なデータが並んでます。  項目   計画数  実績数  計画日  実績日  sample1   2    3   10/10  10/11  sample2   4    3   10/9   10/12  sample3   5    2   10/10  10/10   … 計画立案時は、計画日に計画数計上する予定だった。 実際は、実績日に実績数が計上できた。 ということを示しています。 ●やりたいこと 下記のような表を作って、グラフ化したい。  日付  計画数  実績数  10/9    4    0  10/10   7    2  10/11   0    3  10/12   0    3   … 各日付毎に、その日に計画されていたのはいくつか。 実際にその日に計上できたのはいくつか。 ということを表にまとめ直したいと思ってます。 詳しい方、ご経験のある方、アドバイス下さい。 何卒よろしくお願いします。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 生データがSheet1のA~E列にあるとします。 (1行目が項目名で、データは2行目から) 表をSheet2のA~C列に作成します。 (1行目が項目名で、集計データは2行目から) A2~にあらかじめ日付を入力しておきます。 (月ごとなら、10/1、10/2・・・・) B2(計画数)に、 =SUMIF(Sheet1!D$2:D$100,$A2,Sheet1!B$2:B$100) と入力して、C2(実績数)へコピー。 さらにBC列とも下の行へコピー。 これで、各日付ごとの集計が表示されます。 なお、生データの範囲(2~100行)は適宜変更して下さい。

Brown2002
質問者

お礼

ありがとうございました。 できました。

その他の回答 (1)

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

VBAで簡単に出来そうなのでやって見ました。 A1:E4に 項目    計画数   実績数   計画日   実績日  sample1 2 3 2003/10/10 2003/10/11  sample2 4 3 2003/10/9 2003/10/12  sample3 5 2 2003/10/10 2003/10/10 とデータとします。 (コード) VBEの標準モジュールに Sub test02() d1 = DateSerial(2003, 10, 1) dr = Range("a2").CurrentRegion.Rows.Count For i = 2 To dr p1 = Cells(i, "D") - d1 + 1 Cells(p1, "G") = Cells(i, "D") Cells(p1, "H") = Cells(p1, "H") + Cells(i, "B") p2 = Cells(i, "E") - d1 + 1 Cells(p2, "G") = Cells(i, "E") Cells(p2, "I") = Cells(p2, "I") + Cells(i, "C") Next i End Sub を貼りつけます。そしてF5で実行します。 (結果) G1:I31の G9:I12の部分に 2003/10/9      4 2003/10/10 7 2 2003/10/11 3 2003/10/12 3 となります。 日付を全行データの無い日も出すときはG列日付をフィルハンドルで引っ張っておいてください。 10月を11月でやるときは d1 = DateSerial(2003, 10, 1)の10を11にしてください。d1はデータとして現われるもっとも過去の日を指定します。

Brown2002
質問者

お礼

ありがとうございました。

関連するQ&A