エクセルの、あるシートのデータを、別シートの項目条件の一致するセルに
書き出す方法を教えていただけますでしょうか?
元のシートには
A列 B列 C列
ID番号 年月日番号 金額
ID番号 年月日番号 金額
ID番号 年月日番号 金額
・ ・ ・
・ ・ ・
という形で、データが入っています。各列でデータには重複はありますが、
A列とB列の内容が共に同じという行は、ありません。
これを列項目がID番号、行項目が年月日番号の、金額を参照する表にしたいのです。
新しいシートのA列に降順に全ID番号を、1行目に同じく全ての年月日番号をいれ、
元のシートのC列データ(金額)を新しいシートの該当セルに書き込むには
どのようにすればいいでしょうか?このような感じで‥。
月日1 月日2 月日3‥‥
ID1 金額 金額 金額
ID2 金額 金額 金額
ID3 金額 金額 金額
・
・
・
実は元のシートは10枚ほどあり(期間で区切っています)、おまけに各シートには
登場しないID番号もあります。
そこで、すべてのID番号と年月日番号をまとめ、ひとつのシートにしたいと考えた次第です。
1枚のシートならばピボットテーブルで何とかなるのですが、それをまとめようとすると、
データの量が膨大で、PCがとまってしまう(のか計算が終わらない気が‥)
VBAを使えば何とかなるのかもと思いまして、質問いたしました。
エクセルは2007です。
どうぞよろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
方法1)【推奨・一番簡単】集約用の仮シートを1枚用意,シート1からシート10まで元データの表を合計10回コピーして集約シートに上から順に貼り付けて,一本のリストにしてしまう。
一本に集約した元リストから,通常の方法でピボットテーブルレポートを作成する。
#バリエーションとして:
一発仕事じゃなく,今後元データにあれこれ追記したり改変するのにも自動で追従させたいなど欲が出たときは。
集約用の仮シートを1枚用意
その例えば1行目から100行目には,シート1の元データを数式で参照する
=Sheet1!A1
のような式をずらり並べておく
101行目から200行目には,同様にシート2の元データを数式で参照させておく
同様にシート10まで,1000行を使って全部のデータを数式で参照させておく。
これを元にピボットテーブルレポートを作成する。
元データの無いセルはゼロが計算されているので,作成したレポートで行・列アイテムからゼロを表示除外しておく。
方法2)クエリを使って,10枚のシートを強引に一つのリストに束ねてピボットテーブルに食べさせる
10枚のシートはSheet1からSheet10までの名前になっているとする
ブックを保存しておく
ピボットテーブルの作成を開始する
外部データソースを使用にマークし,接続の選択から参照ボタンで「自分ブックを選択」する
とりあえずSheet1$を選んでOKし,シート1の元データからピボットテーブルを作成する
作成したレポートについて,ピボットテーブルツールのオプションでデータソースの変更▼から接続のプロパティを選ぶ
定義のタブでコマンドの種類を「SQL」に変更
コマンド文字列欄に下記をコピー貼り付ける
SELECT * FROM `Sheet1$`
UNION ALL SELECT * FROM `Sheet2$`
UNION ALL SELECT * FROM `Sheet3$`
UNION ALL SELECT * FROM `Sheet4$`
UNION ALL SELECT * FROM `Sheet5$`
UNION ALL SELECT * FROM `Sheet6$`
UNION ALL SELECT * FROM `Sheet7$`
UNION ALL SELECT * FROM `Sheet8$`
UNION ALL SELECT * FROM `Sheet9$`
UNION ALL SELECT * FROM `Sheet10$`
OKし,レポートを更新する。
方法3)【ある意味簡単】
シート1だけから,ふつーにピボットテーブルレポート1を作成する
同様にシート10まで,ピボットテーブルレポート10までを作成する
10枚の縦横集計表が出来てたので,
・データタブの統合を使って一つに束ねる
・ALT+D Pのキー操作でピボットテーブルウィザードを起動し,複数のワークシート範囲から作成した10枚を改めて元データに指定して集計させる
いずれの方法も,いわずもがなですが各列の先頭行(1行目,A1,B1,C1)には,同じ記載内容で「ID番号」だの「年月日」だの「金額」だのの内容を記載しておかなければいけません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
excel・VBAで奇数・偶数の分岐...
-
【条件付き書式】countifsで複...
-
エクセル 月のデータを週ごとに...
-
VBA 抽出後、別シートにコピー
-
エクセルの列の限界は255列以上...
-
Excelで、ファイル名、シート名...
-
エクセル マクロ 標準モジュー...
-
EXCEL VBAのコンボボックスに取...
-
"りんご"と"みかん"というシー...
-
エクセルで、チェックボックス...
-
A列をK列に変更
-
Excelで条件別にシートを振り分...
-
【VBA EXCEL データ有無 行 判...
-
検索に引っ掛からない文字行を...
-
【マクロ】あいうえお順のシー...
-
エクセル関数について、特定の...
-
エクセルVBAで、検索・抽出の仕...
-
エクセルのマクロで複数条件に...
-
VBA 元データに上書きする 列番...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
エクセルの保護で、列の表示や...
-
文字の色も参照 VLOOKUP
-
Excel の複数シートの列幅を同...
-
VBAで繰り返しコピーしながら下...
-
【条件付き書式】countifsで複...
-
エクセル マクロ 標準モジュー...
-
エクセルの列の限界は255列以上...
-
Excelでの並べ替えを全シートま...
-
エクセルで、チェックボックス...
-
エクセルマクロを教えてほしい...
-
SUMPRODUCTにて別シートのデー...
-
Excel VBA ピボットテーブルに...
-
エクセルのブック分割マクロを...
-
【VBA】複数のシートの指定した...
-
excel 複数のシートの同じ場所...
-
Excelに自動で行の増減をしたい...
-
スプレッドシートでindexとIMPO...
-
エクセルで横並びの複数データ...
-
エクセル複数シートのデータを...
おすすめ情報