- ベストアンサー
Excelで複数シートのデータを紐づけまとめる方法
- Excelのバージョン2007を使用して、複数のシートにあるデータを紐づけてまとめる方法について教えてください。
- IDを用いて個人ごとのデータを年ごとにまとめたい場合、Excelを使用することができます。
- 手作業でIDを揃えるのは非効率なため、Excelを活用することで時間を削減することができます。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
項目A~Cのデータが数字なら統合の機能を利用するのが簡単です。 集計シートで「データ」「統合」で各シートのデータ範囲(必要なら大きめにデータ範囲)を「追加」して統合の基準で「上端行」と「左端列」にチェックを入れ「OK」します。 関数で対応したいなら、A2セル以下に各シートの重複の無いID番号を入力し(すべてのシートの項目名を1列にコピー貼り付けして「データ」「重複の削除」をして必要なら並べ替えで「A↓Z」をクリックしてください)、B1セルから右に各年度の項目A~Cの項目名を入力しておき、B2セルに以下のような式を入力し右方向に3つ下方向にオートフィルします(Sheet1のデータを引っ張ってくる場合)。 =IFERROR(VLOOKUP($A2,Sheet1!$A:$D,MATCH(B$1,Sheet1!$A$1:$D$1,0),0),"")
その他の回答 (2)
- KURUMITO
- ベストアンサー率42% (1835/4283)
それぞれの年においてまとめられたデータが例えば2011のデータがシート見出しで2011のシートにあるとします。 それぞれの年のシートではA1せるにIDの項目名が有りその右の列にはいくつかの項目名が入力されており各データは2行目から下方に入力されているとします。 そこでお求めのシートですが例えばシート1とします。 A1セルにはIDの文字を入力し、その下方にIDを入力します。 ところでまとめたい年が2011年が元も古い年であるなら2011以降のデータを表示させることにしてB1セルには次の式を入力して右横方向にドラッグコピーします。 =IF(COLUMN(A1)<=COUNTA(2011!$B1:$XX1),INDEX(2011!$B1:$XX1,COLUMN(A1)),IF(COLUMN(A1)<=COUNTA(2011!$B1:$XX1)+COUNTA(2012!$B1:$XX1),INDEX(2012!$B1:$XX1,COLUMN(A1)-COUNTA(2011!$B1:$XX1)),"")) B2セルには次の式を入力し右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(OR(B$1="",$A2=""),"",IF(COLUMN(A1)<=COUNTA(2011!$B1:$XX1),IF(COUNTIF(2011!$A$2:$A$5000,$A2)=0,"",INDEX(2011!$B2:$XX5000,MATCH($A2,2011!$A$2:$A$5000,0),COLUMN(A1))),IF(COLUMN(A1)<=COUNTA(2011!$B1:$XX1)+COUNTA(2012!$B1:$XX1),IF(COUNTIF(2012!$A$2:$A$5000,$A2)=0,"",INDEX(2012!$B2:$XX5000,MATCH($A2,2012!$A$2:$A$5000,0),COLUMN(A1)-COUNTA(2011!$B1:$XX1))),"")))
お礼
早々のご教示をいただきどうもありがとうございました。 VLOOKUP関数は他で使ってはいたのですが、設定するのも大変なように思っていて、考慮していませんでしたが、ご教示により簡単に行うことができ、とても助かりました。 本当にありがとうございました。
- aokii
- ベストアンサー率23% (5210/22062)
複数シートにあるIDを一つの別シートのA列に全てコピーして貼り付けしてから、ピボッテーブルで重複を無くし、B列にVLOOKUP関数で、IDをキーにして、複数シートから2列目を抽出すれば、項目A(2011)のデータができます。同様にC列に複数シートから3列目を抽出すれば、項目B(2011)のデータができます。以下同様に、項目C(2011) 項目A(2012) 項目B(2012) 項目C(2012)のデータを抽出してみて下さい。
お礼
早々のご教示をいただきどうもありがとうございました。 VLOOKUP関数は他で使ってはいたのですが、設定するのも大変なように思っていて、考慮していませんでしたが、ご教示によりさほど大変でもないことに気づきました。次の回答者の方に補足いただき、実際簡単に行うことができました。 どうもありがとうございました。助かりました。
お礼
貴重なご教示をいただき、どうもありがとうございました。 前の回答でVLOOKUP関数を使い、解決することはできたのですが、私が使ったことがなかった「統合」を教えていただき、視野が広がりました。確かに、とても便利でした。 どうもありがとうございました。