• 締切済み

Excelで2箇所のデータを1箇所にまとめる方法は

2箇所にあるデータを1つにまとめるにはExcelの機能で簡単にする方法はありますか? 例えば シート1 A B C D 1 氏名 12月 2 申告 未申 ク 3 A 0 1 1 4 B 0 1 0 5 D 1 0 0 シート2 A B C D E F G 1 氏名 1月 2月 2 申告 未申 ク 申告 未申 ク 3 A 0 1 0 2 0 0 4 C 0 1 0 0 1 0 5 D 0 0 0 0 2 0 これの合計をシート3にまとめるには、Excelのどのような機能でプログラムで簡単にまとめられますか? シート3 A B C D 1 氏名 2 申告 未申告 ク 3 A 4 B 5 C 6 D B列の申告、C列の未申告、D列のクにExcelの機能を使って簡単に合計をまとめるのを作成したいです。シート1と2にはシート1と2に同じ人もいればシート1にしかいない人、シート2にしかいない人がいます。ただ、データは同じです。シート1は12月のデータ、シート2には1月、2月のデータがあります。シート1にはA1は氏名、A3はA,A4はC,A5はD,、B2は申告、B3は0,B4は0,C1は12月、C2は未申告、C3は1,C4は1です。他のシートも同じように見てください。ズレテ表示されてしまっているかもしれません。実際にはシート2には6月までのデータもまとめたいです。宜しくお願いします。Excelの検索機能等を使ってシート3にシート1と2のデータをまとめる事が出来ますか?回答宜しくお願いします。 シート3に計算式を入れます。例えばB3にSUM=(sheet1!,B3)(sheet2!,B3,E3) シート3のB4にSUM=(sheet1!,B4)(sheet2!,B4,E4) B5にSUM=(sheet1!,B5)(sheet2!,B4,E5)を入れる方法だとシート1とシート2に違った人がいる為に下に向かって同じ式をコピーしていくのが出来なくて困っています。上記の式だとコピーしただけだから職場の人にも駄目だと言われています。他のやり方が分からないので誰か教えて下さい。宜しくお願いします。

みんなの回答

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

質問者が、VBAなどなじみがなく、下記は何を言っているか、よく判ら無いようなら無視してください。  この問題はエクセルの「データの表の組換え」問題です。 こういうのは、エクセル関数で処理しようとすると、複雑な式になりむつかしい式の組み合わせとなり、方法として適していません。 この問題はデータベースソフト(最低でもMSアクセス)を使うべきと思う。 ファイルの結合ということが、操作ででも簡単に出来るから。 (なおちなみにエクセルのシートデータをMSアクセスのテーブルに移すのはたやすい。) 強いてエクセルでやるにしても、エクセルVBAは多少できないとむつかしい。 下記はその概略ロジックの1つ。 (1)Aブックの対象の1シートのA列に列挿入し上行から連番を振る (2)Bブックの対象の1シートのA列に列挿入し上行から(1)の最終連番の次からの 連番を振る (3)第3のシートに(1)をコピーして貼り付け (4)(3)の最終行の最下行の次から(2)をコピー貼り付け   ただし(2)の上の部分の見出し行は取り除いておく。 (5)(4)のシートを氏名+連番でソート   同一氏名行はそれぞれ行的に隣接して固まる。 以上(1)-(5)はVBAでもできるが、手操作で行う。 (6)第3のシートを用意する。 (7)基本的に全行について繰り返し処理する。以下VBAのコードを書いて実行。 各氏名が変わった最初行で、その氏名のシート内での件数を VBAにもあるCountIf関数で同一氏名件数=行数を知る 件数が1の場合はその1行を第3のシートへコピー。 複数行あれば (8)その件数分の行データの間下記の処理を繰り返す。 (9)第3のシートに   A.氏名をコピーする   B。属性列には優先順を考えて残すべき1セルデータを決めて移す   C.重複あり項目は、2つ以上のその氏名の行からコピーして、第3のシートの右列からコピーして移していく    (注)OCCURS句のような項目 下記はCobolの例か    https://www.tsh-world.co.jp/sp/support/manual/V701html/gtman3/gt3_124.htm     例 毎月の体重を記録(時により変化するデータ)       販売した物品を記録(毎月分。人により獲得件数が違う)       販売した物品を記録(過去から累積して記録) 次の処理単位は、同一氏名件数を加えた行数からに処理を移し、(9)を繰り返す。 ここは、VBAコードまでは要求するコーナーでないこと、質問のデータ状況の説明が不十分なので、具体的なコードは、他人には書きにくい、ので、ここには書か(け)ない。 質問後日数が経っているから、既出回答でうまく行かないなら、再質問も含めて考え直したら。       

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 まずSheet3のB3セルに次の関数を入力して下さい。 =IFERROR(SUMIF(Sheet1!$B$2:$D$2,B$2,INDEX(Sheet1!$B:$D,MATCH($A3,Sheet1!$A:$A,0),)),0)+IFERROR(SUMIF(Sheet2!$B$2:$G$2,B$2,INDEX(Sheet2!$B:$G,MATCH($A3,Sheet2!$A:$A,0),)),0) 或は =IF(COUNTIF(Sheet1!$A:$A,$A3),SUMIF(Sheet1!$B$2:$D$2,B$2,INDEX(Sheet1!$B:$D,MATCH($A3,Sheet1!$A:$A,0),)),0)+IF(COUNTIF(Sheet2!$A:$A,$A3),SUMIF(Sheet2!$B$2:$G$2,B$2,INDEX(Sheet2!$B:$G,MATCH($A3,Sheet2!$A:$A,0),)),0)  次に、Sheet3のB3セルをコピーしてSheet3のC3~D3のセル範囲に貼り付けて下さい。  次に、Sheet3のB3~D3のセル範囲をコピーしてSheet3のB列~D列の列範囲の4行目以下に貼り付けて下さい。

hiro7ti
質問者

補足

シート3のB3,C3,D3にシート1のB3,C3,D3とシート2のB3,C3,D3,E3,F3、F3を一気に選択して反映させる。また、シート3のB4,C4,D4にシート1のB4,C4,D4,を一気に選択して反映させる方法はありますか?シート3のB6,C6,5、D6にシート1のB5,C5、D5,とシート2のB5,C5,D5,E5,F5,G5,を一気に選んで反映させる方法はありますか?宜しくお願いします。

関連するQ&A

  • エクセルデータ照合

    エクセルのデータ照合によりデータの統合をしたいです。 Sheet1 A校 50% B校 30% C校 40% D校 30% E校 20% Sheet2 B校 C校 E校 F校 Sheet1 とSheet2 の学校を照合して共通校のみを抽出しSheet3として B校 30% C校 40% E校 20% データ数は約1万件です。 宜しくお願いいたします。

  • Excelで名前に対してデータが連動する方法は?

    Excelで名前に対してデータが連動して場所を移動しても同じ行にデータが付いてくる方法教えて下さい。 Excelで例えば A B C D E F  1氏 誕 申 未 ク 合 2山   0 1 2 3 3鈴   1 0 1 2 4高   2 1 2 5 5 A2の山がA5の場所にきてもC2の0,D2の1,E2の2,F2の3がC5に0が入り,D5に1が入り,E5に2が入り,F5に3が入るように山のデータが一緒に付いてくるようにするにはどうしたらよいか教えて下さい。山に山の0,1,2,3のデータが連動しているというようにしたいです。鈴、山、高も同じようにしたいです。山が場所を移動してもデータが同じ行に付いてくるようにするにしたいです。簡単に出来る方法を教えて下さい。宜しくお願いします。

  • 別のシートにデータを出す方法

    シート1に 番号 A1に1 A2に2 A3に3 A4に4 データ↓ B1に43 B2に45 B3に47 B4に55 C1に733 C2に890 C3に826 C4に94 D1に57 D2に67 D3に41 D4に52 E1に301 E2に104 E3に719 E4に441 という表があるとします。 番号1の場合は、B1の43、C1の733、D1に57、E1に301というデータです。 シート2の、 A3に、1という数字(シート1のA1の、1という番号)をいれれば、 シート2の B3に、シート1の、B1の43というデータ。 C3に、シート1の、C1の733というデータ。 D3に、シート1の、D1の57というデータ。 E3に、シート1の、E1の301というデータ。 がでるようにしたいのですが、 VLOOKUPを使ってできますか? どのような関数の立て方したらいいでしょう? XPのExcel2003です。 よろしくお願いしますm(_ _)m

  • エクセルのデータ照合

    AとB2つのエクセルシートがあって、Aのシートのデータが Bのシートにもあるかどうかを調べる時どのようにすればいいのでしょうか? 例えば・・・、 <シートA>    A  B C D E F G <シートB> A B H I というエクセルデータがあって、シートBのデータがシートAにあるか どうか(AとBはあるのでYES、HIはないのでNO)など一発で 検索する方法を教えていただけないでしょうか? 宜しくお願いします。

  • エクセルの各シートのデータを自動的に複写する方法

    現在、エクセルでデータの管理を行なっていますが、複数のシートから必要なデータのみ(「郵便」と入れた列)を、特定のシートに複写する方法の計算式をご教示ください。 エクセルデータのシート例示状況は次のとおりです。 (1) sheet1      A        B    C     D     E   F 1 (株)東京 1000  500 200  100 郵便 (2) sheet2      A        B     C    D     E 1 神奈川県庁 50   20  100  郵便 (3) sheet3(このシートに各シートのデータに「郵便」と入れた業者名だけを順次下のセルに自動複写していく)    A        B     C    D    E 1 (株)東京 2 神奈川県庁 このように何とかならないか考えています。誠に申し訳ありませんが、一連の「計算式と手法」をご教示ください。お願いします。 やっぱり「マクロ」しかないですよね。(マクロはかなりの初心者です) なお、エクセルは2003です。 重ね重ねお願いします。

  • 2つのエクセルのデータを結合する方法で困っています。

    2つのエクセルのデータを結合する方法で困っています。 下図のE部分だけをファイル1からファイル2に反映させたいのですが、 行が追加されたり、削除されたりしているため、単純に貼り付けできません。 (下の例では、ファイル1>2の過程で【い】【え】が削除、【も】【か】が追加、【あ】のB【う】のCの内容が変更になっています) 何かいい方法はないでしょうか? ファイル1:       A   B  C   D  E   1あ  ●  ●  ●  ●  ■   2い  ●  ●  ●  ●  ■   3う  ●  ●  ●  ●  ■   4え  ●  ●  ●  ●  ■   5お  ●  ●  ●  ●  ■ ファイル2:       A   B  C   D  E   1あ  ●  ▲  ●  ●     2も  ●  ●  ●  ●     3う  ●  ●  ▲  ●     4お  ●  ●  ●  ●     5か  ●  ●  ●  ●   こうしたい:       A   B  C   D  E   1あ  ●  ▲  ●  ●  ■   2も  ●  ●  ●  ●     3う  ●  ●  ▲  ●  ■   4お  ●  ●  ●  ●  ■   5か  ●  ●  ●  ●   Excelのバージョンは2000です。実際は1000行×30列×10シートくらいあって、結構な頻度で結合するのですが、手でやっていて大変なのです。。

  • EXCELの引用方法について

    たとえば、下記のような表がSheet1にあるとします。   A      B      C    D   E 1 クラウン   トヨタ   セダン  3000 黒 2 エルグランド ニッサン  ワゴン  2500 白 3 ワゴンR   スズキ   ワゴン  660  灰 Sheet2に、C1に、クラウンと入力すると、必要なデータが、D1やE1に引用されてくるようにするには、どうしたらよいでしょうか? クラウンの入力につきましては、 「データ」→「入力規則」→「リスト」より入力させます。 氏名、住所は、手入力します。 (Sheet2)   A   B    C     D    E 1 氏名  住所   クラウン  トヨタ 3000    よろしくお願いします。

  • エクセルで住所録を分類する方法は

    いつもお世話になっています。(エクセルは2002です)   A     B       C   D   E 1 郵便番号  住所      氏名  地区  備考 2 100   A県B市C町  C氏  E   G 3 100   A県B市D町  C氏  E   G 4 200   B県      D氏  F   H 上記のような表(シート1)があります。 シート2にA県、シート3にA県以外を郵便番号・住所・氏名・地区・備考を分けて、シート2の表をシート4にB市、シート5にB市以外に郵便番号・住所・氏名・地区・備考を分けて、シート4の表をシート6にC町、シート7にC町以外に郵便番号・住所・氏名・地区・備考を分ける方法を教えてください。 うまく説明できませんがよろしくお願いします

  • 「エクセルでのデータ検索」について

    「エクセルでのデータ検索」について 基本的な質問ですいません。 エクセルで、以下のようなことをしたいのですが・・・ 【シートA】   A  B  C  D E 1   ○ △ □ ◇ 2 あ ※ ※ ※ ※ 3 い ※ ※ ※ ※ 4 う ※ ※ ※ ※ (※は任意の数値) このとき、【シートB】に以下のように「◇」「う」と入力すると “B2”欄に【シートA】の“E4”(=「◇」と「う」の交差する位置) の値が出るようにしたいのです。  【シートB】   A  B  C  D E 1   ◇ 2 う 3 4   ちなみに【シートB】に入力する値はその都度変わるので、VLOOKUPや INDEXではうまくいきませんでした。 実際は長めのマクロで行っている作業の内の一部ですので、「関数」でも 「マクロ」でも、どちらでも対応できます。 ご教示のほど、よろしくお願いいたします。   

  • エクセルのデータ整理で。

    2日続きで教えてもらいに来ました^^;よろしくお願いします。 エクセルのデータの整理をしております。 Sheet1,Sheet2のデータをSheet3へ反映したいと考えております。 Sheet1には、以下のようなデータがあります。   A   B   C  D   住所 氏名 年齢 家族数 1 東京 鈴木 30 3 2 埼玉 田中 33 5 3 千葉 高橋 40 2 4 東京 伊東 31 4 Sheet2には、以下のようなデータがあります。   A   B   C  D   住所 氏名 年齢 家族数 1 埼玉 林  22 1 2 千葉 森  29 2 3 東京 岡  25 3 4 東京 南  27 1 これらのうち、Aに「東京」とあれば、Sheet3に1行目から順に抽出したい。以下のようにしたいのです。   A   B   C  D 1 東京 鈴木 30 3 2 東京 伊東 31 4 3 東京 岡  25 3 4 東京 南  27 1 アドバイスお願いします。

専門家に質問してみよう