• 締切済み

Excelの複数ブックにあるデータの結合(統合?)

複数の人から同じフォームに入力をした表が送られてきます。 【表サンプル】 A1 記入者名 2行目に項目が B1 空白 B2 購入日付 B3 金額  のように並んでいます。 3行目からデータが入っており、記入者によって入力する行数が異なります。(最大データ数は20件) 複数名が入力してくるこの表のデータを 1つのシートにまとめたいと思っています。 (各データの記入者情報がわかるようにしたいです) まとめた後、さらに「購入日付」の月ごとのシートに分けることができたら更に助かります。 このような作業をするにはどうしたらよいでしょうか。大変困っています。 わかりづらくて申し訳ありませんが、どうぞよろしくお願いいたします。

みんなの回答

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

ブックが違っているのがネックなんですが、1つのブックの別シート複数枚にする方法を実行する、例えばVBAでやるとして、その後はエクセルのデータ-統合(普通名詞で言うのでなくなく、エクセルのウイザード・術語です)のメニューで上手く行きます。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=566073 中級の技ですが、威力はすごいです。 http://www.mit-s.net/excel.html(パソコンスクールのカリキュラム例) http://k559-01f4.business.ube-k.ac.jp/hyoukeisan/keisan7.pdf

  • handomari
  • ベストアンサー率47% (83/174)
回答No.1

質問内容と少し違いますが、以下のようなやり方はどうでしょう。(Excel2002で確認しました) 前提条件として、AさんとBさんのデータを統合するとします。 まず、フォームの1行目は、A列から順に、記入者名,購入日付,金額と見出しを入力します。 そして、フォームの2行目~21行目をAさんの入力欄、22行目~41行目をBさんの入力欄にします。 次に、メニューから「ツール」-「変更履歴の記録」-「変更箇所の表示」を選び、仮に「form.xls」という名前で保存します。 保存した「form.xls」をAさんとBさんにコピーして渡し、それぞれ自分の入力欄に入力し、Aさんは「a.xls」、Bさんは「b.xls」という名前で保存して、戻してもらいます。 そうすると、あなたの手元に「form.xls」「a.xls」「b.xls」の3つのファイルが集まります。 そこで、まず「form.xls」を開き、続いて「a.xls」を、メニューから「ツール」-「ブックの比較と反映」で開き、さらに「b.xls」を同様に開きます。 すると、2つのブックの内容が「form.xls」に集まります。

関連するQ&A

  • EXCEL 複数人で共有ブックへの書き込み

    EXCELで、フォームから入力して、シートにデータを追加していくという処理を作っています。 これを複数人同時に開いて、処理できるでしょうか。 Aさん、Bさんが同時に開いて、フォームから入力。 シートの10行目まで、データが入っている状態。 このとき、VBAで、今入っている行数+1に次のデータを埋めるという処理にしたら、2人とも11行目に書き込むことになり、保存時にどちらの内容を反映させるかと聞かれます。 これをうまく、保存するタイミングで、先に保存するAさんは11行目、Bさんは12行目とできないでしょうか。 よろしくお願いします。

  • エクセルのマクロを知りたい

    エクセルで,たくさんのデータが入力された【シートa】があります。 新しく【シートb】を作成して,そこに空白の表(1)~(10)までを作成します。 (ちなみに表(1)は1行から始まり100行まで,表(2)は101行から始まり200行まで・・・・といった感じです) 【シートb】の表(1)には,【シートa】でA列に「1」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。同様に,表(2)には,【シートa】でA列に「2」が入力されているデータを抽出して,それをB列の昇順に並べて記入しなさい。・・・というのを表(10)まで続けます。 上記のような命令をボタン一つで操作できるようなマクロを教えて欲しいのです。 お願いします。

  • マクロを使用し、EXCELのデータから必要な部分を取り出し2つのsheetに貼り付けたい

    条件 EXCELのデータ A列からL列まで 複数行(行数は、決まっていない) (例) 40行ほどあるデータを見て 1行目から10行目までをsheet1に 12行目から20行目までをsheet2に貼り付けたい場合。 11行目のA列(空白になっている)に手入力で「a」と入力 21行目のA列(空白になっている)に手入力で「b」と入力し、 1行目から「a」のある行までをコピーし、sheet1に貼り付ける 「a」のある行より1行下から「b」のある行までをコピーし、sheet1に貼り付ける 以上のことをマクロで実行する方法を教えて下さい。

  • 複数のエクセルブックを統合し集計するマクロ

    各担当者の月毎の実績を集計するマクロを作ろうとしています。 *販売月、顧客名、金額などの見出しが各ブックの7行目まで、  8行目以降の行数は各担当者によって異なります。  (50行くらいの担当者もいれば300行くらいになる担当者も) *"E1"に販売月を入力し、4月から翌年3月までの実績、予算を入れるのですが、  担当者によっては空白の行を挿入しているため、  空白以降の行がカウントされず、うまく集計できません。 *各ブックの実績データの下で集計しているため、値の入っているセルを選択するのではなく、  実績データ部分だけコピーするにはどうしたら良いのでしょうか?  範囲に名前を付ければ良いのでしょうか?  マクロのことがよく分かっておらず、ネットや本を見て 使えそうなマクロを組み合わせて作ってみたのですが、 何か良い方法があれば教えて頂けると大変助かります。 説明も下手で恐縮ですが宜しくお願い致します。 ************************************ Workbooks.Open Filename:= _ "担当者A" _ , ReadOnly:=True '"貼付シート"にコピー、ファイルを閉じる Sheets(1).Select Cells.Select Selection.Copy Range("A8").Select Windows("貼り付けシートのあるブック").Activate Sheets("貼付シート").Select Range("A1").Select ActiveSheet.Paste Application.CutCopyMode = False Range("A1").Select Windows(2).Activate ActiveWorkbook.Close SaveChanges:=False '貼付シートの各担当者の見出し行を削除 Rows("1:7").Select Range("A1").Activate Selection.Delete Shift:=xlUp "統合シート"シートを新しいシート(Sheet1)として追加 Sheets("統合シート").Copy Before:=Sheets("統合シート") Sheets("統合シート (2)").Name = "Sheet1" '行数取得 Dim 件数 As Integer Dim 行数 As Integer '前回までの行数用 Dim 行数_Total As Integer '最終行用 Sheets("貼付シート").Select 販売月セルで入力行数をカウント(必須入力項目の為) Range("E1").Select Selection.CurrentRegion.Select 件数 = Selection.Rows.Count 行数 = 件数 + 8 'Headder分(7行)の次の担当者のスタート行数を足す '貼付シートからデータをコピーして貼り付け Sheets("貼付シート").Select Range(Cells(1, 2), Cells(件数, 49)).Select Selection.Copy Sheets("Sheet1").Select Range("B8").Select '元ファイルから値と書式を貼付 Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False '最終行を前回最終行エリアへ移動 行数_Total = 行数 '貼付シートをクリア Windows("統合シート").Activate Sheets("貼付シート").Select Cells.Select Selection.Delete Shift:=xlUp Range("A1").Select

  • エクセルで複数のブックに分かれているデータをまとめる方法

    エクセルを使っています。 ・複数のシート(シートA、シートB、シートC)にあるデータを、一つのシートにまとめる良い方法を教えて下さい。 ・各シートのデータですが、1.列数は同じ、2.行数はばらばらです。 ・各シートにあるデータを、一つのシートに縦に長くコピーしたいです。 簡単なマクロならがんばって使いたいので、マクロのヒントでもかまいません。 どうぞよろしくお願いいたします。

  • 複数の表からデータをまとめて総合表を作りたい

    複数の同じ形式の表から、データのある行だけを抽出し、それを全て並べて一つの表にまとめたいです。表自体の列数・行数は固定ですが、行数は項目数によっては余ることがあります。 表1: 日付  項目  金額 6/4 花   300 6/11 手紙 200 6/14 花 350 (空白) (空白) (空白) (空白) (空白) (空白) 表2: 日付  項目  金額 7/2 手紙 210 7/16 手紙 270 (空白) (空白) (空白) (空白) (空白) (空白) (空白) (空白) (空白) 表3: 日付  項目  金額 8/9 花   300 8/21 手紙 200 8/24 花 350 8/26 花 250 8/29 花 250 これらから下記のような表を作りたいです。 日付  項目  金額 6/4 花   300 6/11 手紙 200 6/14 花 350 7/2 手紙 210 7/16 手紙 270 8/9 花   300 8/21 手紙 200 8/24 花 350 8/26 花 250 8/29 花 250 実際には表も数十あるため、手動では大変で困っています。 もし方法がありましたらご教授下さい。よろしくお願い致します。

  • 複数のエクセルファイルからのデータの抽出、一覧の作成について

    エクセルでのデータ整理の件で以下の質問があります。 以下のことができるようなマクロは組めませんでしょうか? 同一フォルダ(仮に、「C:\Sample」とします)に日々の業務データが 入力されたエクセルファイルが300個ほどあります。 各ファイル内にはSheetが5枚あり、各ファイルで入力されているデータは すべて同一のフォーマットです(Sheet毎では異なる。 例えば、Sheet1の1行A列には日付データ、Sheet2の2-5行B列には名前データ、といった感じです)。 これら300個のファイルから、これまでのデータを一覧にしたリストを 新規に作りたいと考えています(作成場所はどこでも構いません)。 例えばSheet1の、1列目にはファイル名、2列目には各ファイルSheet1の1行A列の日付データ、 3-6列目には各ファイルSheet2の2-5行B列の名前データ・・・、といった具合です。 (縦に日付が並び、1行内に各ファイルのデータが入力されている、 といった風にしたいと考えています。) 参考になりそうな過去の回答もありましたので、いくつか試してみたものの、 うまくいきませんでした(私はマクロは少しかじった程度です)。 一個ずつコピペでは非常に骨が折れ、難儀しております。 ややこしい質問ではございますが、ご回答お待ちしております。

  • Excel 複数あるシートのデータを1枚にまとめる

    何度かこちらで質問をさせていただいてます。 同じような質問を繰り返してしまい、申し訳ございませんがどうかお助け願いたいです。 複数あるシートを、1シートにまとめ、且つ見やすくしろと上司に言われました。 同一ブック内に70シートあります。 いずれも列Aは空白のままで、列Bからデータが入力されています。 列Bにシステム名・そのシステムのバージョン・名前・その人の個人IDが、 列Cには人数が書かれています。 (画像参照) ▲▲▲ 2.0.1 山田 ABCDE 佐藤 ACEDF 2.1.1 永田 DEFCD ・ ・ ・ ●●● 1.0.1 渋谷 UUIOP 1.0.2 ・ ・ ・ という感じです。 こんなデータが約70のシートにそれぞれあります。 どのように1枚にまとめたいかといいますと、 1行目に名前・ID・機材名とバージョンずらずらずら 2行目から個人名・その人のID・1行目に書いている機材を使用しているか(使用していたら○をつけたい) という感じです。 Excel初心者で、キャパ越えで困っています。 縦列につらつらつら~っと書かれているせいで、どうこれを行に移して名前とIDと機材名を関連つけるか悩んでいます。 どうか力を貸してください・・・ 宜しくお願いいたします。 (なお、画像に使ったデータは参照用ですので、元データではありませんが、元データはこのような形です。)

  • エクセルで複数のシートのピボットテーブルを使用する方法

    ひつのシートのピボットテーブルでは、ウィザードを使って、レイアウト選択メニューで行・列それぞれ必要とする項目名(フィールド)をドラッグ選択できますが、複数シートで作成すると行・列それぞれが「行」「列」の表示だけで任意の項目を選択できません。試しに複数のシートで同じフォームで全てのセルにデータが存在すれば可能なようですが・・・ 問題のファイルは、各シートのデータフォームが若干異なっています。ただし、項目名の一部は共通です。また、シートによって入力していないの項目列があります。ただし、ピボットテーブルで必要とするデータの行列ともに同一項目名でデータは存在しています。例 データ列 A~J列の10列分、シート1は全て入力済、シート2は3・4列目が未入力(空白)、シート3は9・10列目が未入力(空白)。レイアウトで任意の項目をドラッグ出来ず「列」「行」としか選択出来ません。それぞれA~J列を選択して、1・5・6・7列のデータの表示をしたいのですが、どなたか教えてください。よろしくお願いします。

  • 複数シートのデータを1シートにまとめたい

    添付ファイルのシート名(A商店~C商店)のような同フォームの複数シートのデータをシート名(まとめ)にょうに1シートにまとめたいのですが、いい方法ご存知でしたらお教えください。  パワークエリで出来そうな気もするのですが  ちなみに実作業で使用するファイルはシート数は100くらいあり、行数も100行くらいあります。  EXCELに長けた方、お教えください。

専門家に質問してみよう