
いつもお世話になります。今回もよろしくお願いします。
現在1つのシートに
表A:
ロット 日付 処理数 板数…
ab 1/4 1000 2
ab 1/5 2800 2
表B:
日付 良品 不良1 不良2 使用機…
1/5 1000 10 15 4
1/5 900 8 5 2,3
1/6 2500 20 13 2
というようなデータが、1月~現在まで、機種ごとに数シートにわたって入力されています。(表AとBは、横並びになっています。)このデータを別シートに必要な箇所のみ日付ごとに集計し、下記のようにAとBを一つの表にまとめたいのです
日付 機種 板数 良品 不良1 不良2 使用機
1/4 101 2
1/5 101 4 1900 18 20 2,3,4
1/5 102 12 …
1/5 103 20 …
1つネックなのが、各機種で稼働日が統一でない点です。ある機種は完全週休2日、他は日曜も稼動したりしています。
自分で考えたやり方としては、各機種ごとに集計シートを作り、表Aで一度、データ→集計(日付ごと)にして、コピーしておき、表Bで同様に集計し、コピーする。その後別シートに日付作成しておき、日付を基準としてVLOOKUPでもってこないといけないのかな?と思っています。
ですが、この時面倒なのが、使用機が同日付内に数機使った場合、重複しないように書き出したいので、結局は全てのデータを目で確認しないといけません。しかも、10機種以上あるので、今後全ての機種を毎月この作業をするのは手間がかかりすぎてしまいます。
これをなんとか簡単に、できればVBAで持っていける方法はないものでしょうか。
わかりにくいと思いますので、不明な点は補足させていただきます。お手数がよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
こんにちは(^^)
少し整理させてください。まず、データベースは、機種別シートの中に表Aと表Bがある状態ですね。たとえば、Accessなどのデータベース管理ソフトでこれを作成する場合は、表Aと表Bは別テーブルで、あるフィールド(列)をキーとして、関連づけさせることになります。集計を行う場合、まず、複数のテーブル(表)の中からキーとするフィールドを決めて、集計に必要なフィールドを集め、統合した新たなテーブルやフォームを作ることになりますが、この作業はクエリーという機能を使って進めると便利でしょう。
まず、データを統合してから、ピボットテーブルで集計されるとスムーズに行くように思われます。ただ、統合がややこしいかもしれません。
新しいシートを立ち上げ、[データ]>[外部データ取り込み]>[新しいデータベースクエリ]とします。データベースタブのExcel Filesを選択>[OK]>データベース名で、ファイルを選択>[OK]
ここで、ファイル内の各Sheetがエクスプローラスタイルで表示されますので、統合するテーブル選択します。表示されない場合は表の作り方に問題がありますので、元のファイルの表を少し変更する必要があるかもしれません。ふつう、フィールド名が先頭行にきていれば認識してくれます。また、表A,Bは同一シート内にあるので、同一テーブルと見なされますね。できれば、どちらかをいったん別シートにコピーするなりして、そのシートを参照したほうがいいでしょう。
フィールド名がすべて表示されますので、統合・集計に必要なものはすべて選択して[>]>[OK]、おそらくクエリーを使って編集する旨のメッセージが出ますので、[はい]または[OK]とすると、MicrosoftQuelyが立ち上がります。(もしかするとMicrosoftQuelyは標準インストールでインストールされなかったかもしれないので、入っていなければ、追加削除で追加しておいてください。)リレーションシップウインドウに、それぞれのテーブルのフィールド名が表示されていますので、日付をキーとする場合は、”日付”をドラッグして、一方のウインドウの"日付"から他方ウインドウの"日付"に重ねてください。これで、MicrosoftQuelyを閉じると、日付をキーとする新しいテーブルができます。このテーブルを、ピボットテーブル集計にしたら良いと思われます。また、この操作はマクロに記録できます。
普段使い慣れていない機能を使うことになると思われます。他の回答でもっと良いものが出るかもしれませんが、チャレンジしてみてはいかがでしょう。説明は長文ですけど、各操作の詳細はヘルプで調べてみてください。
TTakさん、いつもありがとうございます。
そか、VBAにこだわる必要はないんですね!ピボットテーブルは初めて使うので時間かかるかもしれませんが、頑張ります!
わからなければ、またお願いします。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するQ&A
- 1 access2013 人物ごとにテーブルにあるデータを横並びにしたい いつもお世話になっておりま
- 2 ピボットテーブルの日付を週ごとに集計したい
- 3 1~31日までの集計表を作成したのですが、別シートに日付ごとに
- 4 access 数量が2なら二行に3なら三行に いつもいつもお世話になっております 下記のようなテーブ
- 5 よろしくお願いします。Excelタスクスケジューラで意味合いはなんとなくわかるのですが、タスクの設定
- 6 ACCESSで日付ごとに自動連番(日付+連番)する方法
- 7 いつもお世話になっております。アクセス2003でデータ管理をしています
- 8 Access2013 クエリの組み立て方について いつも大変お世話になっております。 Aテーブルに下
- 9 いつもお世話になっております access2010です 下記のようなクエリAがあるとします SELE
- 10 ACCESS 組み合わせごとに集計
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
【アクセス】クエリで、行と列...
-
5
AccessからExcelへエクスポート...
-
6
ピボットの集計方法「合計」初...
-
7
Accessフォームにクロス集計ク...
-
8
アクセスで同じ種類のものを横...
-
9
エクセルで工事台帳を作ってい...
-
10
エクセルで数値の訂正を見え消...
-
11
アンケートの集計
-
12
エクセルで数値のプラス毎とマ...
-
13
Excelでログ集計をしたいのです...
-
14
ピボットテーブルグループ化に...
-
15
Excelで日別に入力されたデータ...
-
16
同フォルダ内複数BOOKを一つのB...
-
17
エクセルを使ってCSVデータを自...
-
18
accessでの条件付き集計
-
19
Excel のSUBTOTAL関数の応用に...
-
20
エクセルで○や×の図形の集計は...
おすすめ情報