• 締切済み

複数あるブックの特定シートの特定範囲を1つにしたい

EXCEL2010を使用しています。 あるフォルダに格納されている複数のブックの、特定シートを、1つのシートにまとめたいです。 複数のブックの作りは同じです。 1つのブックに、複数シートがあり、"(配置)"というシートだけを、新規のシートにまとめたいです。 <今ある各ブック> ファイル名は、2014年度特定措置_●●.xlsで、●●だけ、ブック名が違います。 シート名が"(配置)"です。 c3セルに部署名が入っています。 b4セルからe10セルまで数式が入っています。 <行いたいこと> 新規のシートのa列に、各ブックにあるc3セルの部署名を持ってきたい。 b列からe列に、各ブックにあるb4セルからe10セルまでの数式を値張りし、取り込みたい。 以上です。 つたない説明で恐縮ですが、大変困っております。 どうか、ご回答の程、どうぞよろしくお願いいたします。

みんなの回答

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

ご希望の内容を実行するにはVBAについての知識が必要ですが 大丈夫ですか? VBAの中でも、あまり使うことがない  Dir関数 を使うことになります。 参考までに C2セルの値をひっぱてくるコードのみ作っておきました。 きちんと動作するかどうかも未確認ですが参考にしてください。 新しいブックを準備して、以下のコードをVBエディターに貼り付け ファイルのあるフォルダに言った保存 その上、このマクロを実行してみてください。 Sub Sample1() Dim buf As String i=1 buf = Dir(Thisworkbook.Path & "\2014年度特定措置_*.xls") Do While buf <> "" i = i + 1 Workbooks.Open Thisworkbook.Path & "\" & buf ThisWorkbook.Worksheets(1).Cells("A" & i).Value = Sheets("(配置)").Rnage("C3").Value Workbooks(buf).Close SaveChanges:=False buf = Dir() Loop End Sub

  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.1

回答ではありません。アドバイスになります。   ひとひとつ新しいシートにコピーすればいいと思うんだけど。・・・ダメ? これが10万シート以上あるとか馬鹿げた数でない限りそのほうが早いと思いますよ。 (100シートくらいならそのほうが回答を待つより明らかに早く処理を終えられると思います)

関連するQ&A

  • 複数のExcelブックから特定シートの特定セル抽出

    同一フォルダ内にある複数のExcelブックから特定シートの特定セル値を抽出して一覧表にまとめるExcel マクロ(VBA)を教えてください。 よく似ている質問、回答を読んだのですが、私のレベルではとても応用できず質問させていただきます。 全く同じものがあれば、そのアドレスを回答いただくだけでも助かります。 【前提】 ・実行する端末のOSはWindows XP(SP3)、Excelは2003 ・対象フォルダはネットワーク接続フォルダ「\\share\target」  この中に、複数のExcelブックがあります。 ・抽出したい対象は、各ブック内の「概要」シートの「C3」セルで統一されています。 【抽出一覧作成イメージ】 ・「集約.xls」ブックの「Sheet1」の2行目から抽出した結果を一覧表示する。 ・表示はA列に抽出元ブック名(=ファイル名)、B列に抽出元C3セルの値。 ・C3セル値を「集約.xls」ブックの「Sheet1」に貼り付ける際には「値で貼り付ける」が望ましい。 というようなイメージです。 とても勝手なお願いではありますが、宜しくお願いいたします。

  • ブックを開かずに、フォルダ内にある複数ブックの、特定セルの値を抽出した

    ブックを開かずに、フォルダ内にある複数ブックの、特定セルの値を抽出したいのですが、やり方をご存じの方がいらっしゃったら教えてください。 フォルダ内には150個ほどエクセルファイルがあり、中身のシート名・フォーマットは同じなのですが、すべてファイル名が違います。 ファイルを開くことなく、これらのファイルの特定のシートの特定のセルにある値を、全て1枚の表にまとめることは可能でしょうか? フォルダ名 →"AGENDA_RIREKI" 参照したいファイル名 →ファイルによって異なる "#1111 AAA.xls"など 参照したいシート名→ "AGENDA" 参照したいセル→ "A7" と "E20~E70(E列のみ) データをまとめたいファイル名→ "AGENDA_matome.xls" データをまとめる時の形↓ (A列)          (B列)            (C列)        (D列) ファイル1のA7の値 ファイル1のE20の値  ファイル2のA7の値  ファイル2のE20の値                     E21の値                    E21の値                     ・                     ・                     ・     VBAは初心者です。。できればコードをそのまま拝借したいです。 お知恵を貸してください。よろしくお願いします。

  • 複数のエクセルブックから特定シートの特定セル抽出

    同一フォルダ内にある複数のExcelブックから特定シートの特定セル値を抽出して一覧表にまとめるExcel マクロ(VBA)を教えてください。 よく似ている質問、回答を読んだのですが、私のレベルではとても応用できず質問させていただきます。 【前提】 ・実行する端末のOSはWindows XP(SP3)、Excelは2003 ・対象フォルダはネットワーク接続フォルダ「\データ解析\データ」  この中に、複数のExcelブックがあります。 ・抽出したい対象は、各ブック内のシート(シート名はファイル名と同じ)の「BO6からBW16までの□の範囲」で統一されています。 【抽出一覧作成イメージ】 ・「集計.xls」ブックの「Sheet1」の2行目から抽出した結果を一覧表示する。 ・表示はA列に抽出元ブック名(=ファイル名)、B列に抽出元BO6セルの値。以降,C列・D列と 順に値を入れていきたい。 ・BO6~BW16までのセル値を「集計.xls」ブックの「Sheet1」に貼り付ける際には「値で貼り付ける」が望ましい。 というようなイメージです。 とても勝手なお願いではありますが、宜しくお願いいたします。

  • 複数のブックから特定データ群を新ブックにまとめたい

    こんにちは。 EXCEL2007について、ご教示ください。 EXCEL2007で、複数ブック内の特定シート上にある特定のデータ(複数) を特定ブックにまとめたいのですが、うまくできずに悩んでいます。 <やりたいこと>  ・参照元は特定フォルダ内にある全ファイルが対象(100程度)  ・ブック内の特定シートが対象(シート名は  ・コピー   (1) 元シートのA4~F4セル(セル結合されています)のデータを、     先シートのB2セルへコピー   (2) 元シートのG4~L4(セル結合)のデータを、先シートのC2セル     へコピー   (3) 元シートのG6~R6セルのデータを、先シートのE2セルへコピー  ・コピー2   次ブックを読み込み、1行下(B3、C3、E3)にコピーする。  ・コピー3   以降1行下にコピーし、ファイルが無くなるまで繰り返す。 以上ですが、マクロでできるように教えていただけないでしょうか。 よろしくお願いいたします。

  • 複数のExcelブックから特定シートのセル範囲抽出

    同一フォルダ内にある複数のExcelブックから特定シートの特定セル範囲を抽出して一覧表にまとめるExcel マクロ(VBA)を教えてください。 このサイトで殆どよく似た回答を読んだのですがうまくいきません。VBA初心者です。 よろしくお願いします。 【前提】 ・実行する端末のOSはWindows 10 ExcelはOffice365 ProPlus ・対象フォルダはネットワーク接続フォルダ  この中に、複数のExcelブック(xlsx、xlsm)があります。 ・抽出したい対象は、各ブック内の「台帳」シートの「A3:Cの最終行」で  複数のブックの中には「台帳」シートが含まれていないブックも混在しています。 【抽出一覧作成イメージ】 ・「集約.xlsm」ブックの「集計」シートの2行目から抽出した結果を一覧表示する。 ・「集約.xlsm」ブックにマクロは登録する ・表示はA列に抽出元ブック名(=ファイル名)、B列からD列に抽出元「A3:Cの最終行」セルの値。 ・「A3:Cの最終行」セルの値を「集約.xlsm」ブックの「集計」に貼り付ける際には「値で貼り付ける」が望ましい。

  • EXCELで複数のブックの特定のセルの合計を求める方法は?

    EXCELの関数,数式で質問です。 <例題>異なる様式の表(数値)で構成された3つのシート(a,b,c)をもつブックが,同じ型式で50個(50ブック)ある。各ブックの特定のシートの特定の数値セル(1~50ブックのbシートのA5セル)の合計を求める数式を示しなさい。 ※この回答の1つは「=1ブックのbのA5+2ブックのbのA5+3ブックのbのA5+4ブックのbのA5+…+50ブックのbのA5」だと思うのです。しかし,いちいち各ブックの対象シート(b)の対象セル(A5)をクリックして数式を完成させるのは大変です。さらに,求めたい特定の数値セルが「bのA5」だけでなく「aのB3」や「cのR6」など,3つ,4つと増えるとすると,同様の数式を入力するのに大変な労力を要します。何か簡単な集計方法(関数,数式)はあるでしょうか。ややこしい質問ですみません。どうぞ御教示ください。

  • 同一Bookに存在する複数sheetの一定範囲を縦列でコピー

    各先生方 お世話になります。 同一Book(○○月分集計.xls)内にシート名 ”集計” ”Aさん、Bさん、Cさん、Dさん、Eさん、Fさん・・・” が存在しております。 ※アルファベットのシート(人名)は月毎に数量が変動致します。 存在する複数のシートの内、”集計”以外のシートの一定範囲セルを”集計”シートのB3セルから「縦列」にコピーしたく望んでおります。 コピー元の対象範囲は各シート共通で、CB2セル~CJ131セル(列:9列分、行:130行分)です。 コピー元シートのコピーの順序は一切、制約をもちませんが、”集計”シート以外の全てのシートから範囲セルのコピーを行うことを条件としております。 (順序がB、C、E、D、A・・・  A、C、B、E、D・・・  のように都度ランダムに変更されても構いません) お手間を取らせて申し訳ございませんが、どの様なコードの記述にて可能となるのか、ご教授いただきたく宜しくお願い致します。

  • 複数シートの対象範囲セルを1つのシートに集約

    共通の条件で作成された複数シートの対象範囲セルを1つのシートに集約したく望んでおります。 月毎の身体測定結果を集約することが目的で、不特定の人数、名前の情報を管理しております。 (人数の最大は10名程度) 既存ブック(測定結果.xls)を予め設け、内部に「表紙」と「集計」シートを作成。 提出されたファイル内の各シートは測定結果.xls内に全て格納。(シート名は全て氏名です) 「表紙」シートに氏名の入力欄を設定(D列2行目から下方へそれぞれ入力) 入力された氏名からブック内のシートを検索し、対象となるシートの指定セルを「集計」シートの指定セルへコピー 説明が解り辛いと思いますので、例を伴ってご説明致します。 当月の身体測定結果をAさん・Bさん・Cさん・Dさん・Eさんの5名が提出したとします。 ※各人の測定結果はそれぞれのシート名「Aさん」、「Bさん」、「Cさん」、「Dさん」、「Eさん」で構成され、シート内の記載配列等も全て同様としております。(共通する書式フォーマットで作成) これらのシートは全て測定結果.xls内に存在するものとします。 1列目はタイトル、2列目から入力された必要数値となります。 A列には日付(A2セルから1日→A32セル=31日まで) B列には体温(B2から数値記載) C列には体重(C2から数値記載) D列には体脂肪率(D2から数値記載) E列にはBMI(E2から数値記載) F列には血圧(F2から数値記載) ※ ブック内の「集計」シートにタイトルやA列の日付も予め入力。 (1) ブック内「表紙」シートの氏名入力欄に測定者名を入力 (例:D2セル=Aさん、D3セル=Bさん、D4セル=Cさん、D5セル=Dさん、D6セル=Eさん) (2) マクロ実行 (3) 入力された測定者名から合致する対象シートを検索 (4) 「表紙」シートの氏名入力欄D2セルの対象であるAさんの情報(シート内B2::F32までの範囲)を「集計」シートB2::F32へコピー (5) D3セルの対象であるBさんの情報(同じくシート内B2::F32までの範囲)を「集計」シートG2::K32へコピー(コピー先を5列毎変える) (6) 優先順位に従い、動作を繰り返して全ての情報を「集計」シートに集約 ※ コピー先への優先順位は「表紙」シートの氏名入力欄上部より判定(D2→D3→D4・・・) このような動作をマクロ化したく望んでおります。 マクロの記録や相談箱を参考に何度かチャレンジしているのですが、コードの意味が理解できず、近づくことすら出来ません。 恐れ入りますが、ご教授いただきたくお願い致します。 以上

  • 別のブックから、特定のシートを指定して他のブックを開くには

    マクロ初心者です。 A.xlsと、B.xlsという2つのブックがあります。 B.xlsはこの時、閉じた状態です。 Aには1つのシートのみがあって、Bには日毎に追加されていく不特定数のシートがあります。 Aのブックのシート内のセル番地A1に、「aaa」と入力した場合、B内の「aaa」という名前のシート名を指定してB.xlsを開くマクロはどう書いたら良いのでしょうか。 頼りきりの質問になってしまって申しわけございません。 何卒宜しくお願い申し上げます。

  • エクセルでの複数ブックの特定範囲を一覧化する

    エクセルでイベントの参加者を数か所から集め、集計を行っています。 今までは紙ベースで受け取り、エクセルへ手打ちをしていましたが、もう嫌です。 エクセルベースで送付してもらい、集計し、一覧化を行いたいです。       【ブックα】      |     【ブックβ】    A    B    C    |    A    B    C  1  年齢 性別  名前   | 1  年齢 性別  名前 2  ・    ・    ・    | 2  ・    ・    ・ 3  ・    ・    ・    | 3  ・    ・    ・ 4  ・    ・    ・    | 4  ・    ・    ・ 様式としてはとしては以上のような一覧で送られてきます。(だいぶ簡略化してますが) この複数ブックの申し込みを以下のような一覧に仕上げたいです。    A   B    C    D 1  α 年齢  性別  名前 2   ・   ・    ・     ・ 3  ・   ・    ・     ・ 4  ・   ・    ・     ・ 5  β  ・    ・     ・ 6  ・  ・    ・     ・ 7  ・  ・    ・     ・ ちなみに、ブックごとの参加者は不定です。なので範囲としては(A1:C100)を抽出するようになると思います。 マクロなるもので、複数ブックを一つのブックにまとめ、複数シートとすることはできましたが、その複数シートの該当範囲のみを転記し、一覧化する(A行にシート名を転記する)ことができません。 また、ただ単に当該範囲を転記するだけでは、空欄セルが多数転記されてしまいそうですが、記入されているセルのみを転記することが可能であればなおいいです。 わたしが「こうできたらいいのに」と思うことはできると思っています。 ただ、私にはその知識がありません。 なのでお力添えいただければ幸いです。 つたない説明で伝わりにくい点もあるかと思いますが、よろしくお願いいたします。

専門家に質問してみよう