• 締切済み

複数のExcelブックの可視セルを統合VBA

いつもお世話になっております。 複数のExcelブックの可視セルのみを、別のブックの1つのシートに統合することはできるのでしょうか? やりたいことは、始めに複数人に同一ファイルを配布し、1つのフォルダにそれを纏め、各担当者ごとでフィルタを掛けた部分(可視セル)だけを1つのブックの2シート目(1シート目はAccessにリンクさせています)に纏めたいと思っております。 ファイルは、1行目に集計・2行目に各項目があり、必要データは3行目からです。 VBA初心者の為、どなたかおわかりになる方いらっしゃいますでしょうか? 宜しくお願いいたします。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

>やりたいことは、始めに複数人に同一ファイルを配布し、1つのフォルダにそれを纏め、各担当者ごとでフィルタを掛けた部分(可視セル)だけを1つのブックの2シート目(1シート目はAccessにリンクさせています)に纏めたい どこからどこまでをあなたが手で準備し、どこから先をマクロにやらせたいのですか。 状況が不明なので、各ブックに内容不明のフィルタをかけて所定のフォルダに集めておく所まで、あなたが事前に準備することにします。 準備: 謎の所定のフォルダはとりあえずc:\test\とします 集めたブックはシートが1枚しか無いものとします 各ブックにはあなたがフィルタをかけた状態で、保存しておきます マクロの仕事は、 1.c:\test\に入っているブックを1冊ずつ順繰り開き、 2.その1枚目のシートの 3.オートフィルタで絞り込まれている範囲をコピーして 4.シート2の上から順に貼り付けていく ことにします #といった段取りを、ご相談の状況を持ってるあなたがまず考えて下さい。 sub macro1()  dim myPath as string  dim myFile as string  mypath = "c:\test\" ’あなたの実際に合わせて正しく記入する  myfile = dir(mypath & "*.xls*")  on error resume next  do until myfile = ""  ’ブックを開いてコピーする   workbooks.open mypath & myfile   activeworkbook.worksheets(1).autofilter.range.offset(1).copy _    destination:=thisworkbook.worksheets(2).range("A65536").end(xlup).offset(1)  ’作業を終えたら閉じて次のブックを探す   workbooks(myfile).close false   myfile = dir()  loop end sub 言わずもがなですが、マクロは集約ブックの標準モジュールに登録します。

関連するQ&A

  • 複数の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」ブックの「集計」に貼り付ける際には「値で貼り付ける」が望ましい。

  • 可視セルから可視セルへのコピー&ペーストについて

    こんばんは、教えてください!! 可視セル(表)から可視セル(表)へのコピーはどうすれば可能でしょうか。 今1つのブックに表があって4人で表を埋めていく作業をしています。 表にフィルターをかけてそれぞれ担当の項目をフィルターで表示させ表を完成させていく作業をしています。また1つのファイルを共有にしていなく、それぞれコピーをしているので最終的に4つのファイル(同じファイルで各担当の項目のみ埋まっているもの)が集まりそれらを1つにまとめなければなりません。 今、まとめている作業をしているのですが、まとめる表も担当の表もどちらもフィルターをかけた状態にしてコピー・ペーストをしようとしています。 そうすると例えばフィルターを使ってAさんのファイルを抽出し、まとめる表にコピーをしようと可視セルの選択をしてコピーを使ってみたのですが、貼り付け たものは表示されていない行にも貼り付けされます。 可視セルのみを可視セルにペーストするにはどうすればいいのでしょうか。 かなり長い文章になりました、すみませんが助けてください!!!!

  • 同フォルダ内複数BOOKを一つのBOOKにまとめる

      『同じフォルダ内の複数BOOKのシートの一部をまとめて1つのBOOKに貼り付けたい』(ミント) 大変困っています!! すべて同じ構成の複数BOOKの最初のシート(Sheet1)の一部のセル範囲を新しい集計用のシートに貼り付けるVBAのコードを教えてください!!!!!! VBAを使用したいのですが、いろいろ調べてもたくさんコードがあって、どれを使えばいいかわからず、混乱状態になってしまっています。。。 詳細はこのような形です。 各BOOKの最初にSheet1があり、その構成はどのBOOKも同じです。 <たとえば・・。>【Book1】 A B C D 1 あ い う え→ラベル行2 お か き く3 け こ さ し【Book2】 A B C D 1 あ い う え→ラベル行2 す せ そ た3 ち つ て と これを【集計用シート】 A B C D 1 あ い う え2 お か き く3 け こ さ し4 す せ そ た5 ち つ て と このようにつなげていきたいのです。全BOOKが複数シートありますが、集計するのはSheet1だけでよいです。 できれば、1行目にあるラベル以外を順番に貼り付けられればと思います。要するに、上記の例でいくと、2行目から集計用シートに貼り付けられていくイメージです。なお、すべてのBOOKは一つのフォルダにまとめられています。 VBA初心者でこの情報だけで絞り込めるのかわからないのですが、他にも情報が必要であれば教えてください。。。 上記のことができるコードを記載頂けたらと思います!!宜しくお願いします!!! なお、Excelのバージョンは2007、OSはWindows7です

  • VBA 複数ブックへ書き込み

    VBA初心者です。 1つのフォルダ内にある100(ファイル名001から100)個のエクセルファイル(ブック)の特定の場所(すべてのエクセル ファイルはファイル名は違うが、同一のシート名で同一のセルの構造になっている。 以上に対して、1つのもとになるファイルA(ブック、シート)の特定のセル(同一列の行を上から順次下る)セルの値を先の同一フォルダ内のエクセルファイル100(001~100)個に対して、ブックオープン、特定セルのデリート、特定セルへの書き込み、ブック保存という一連の作業を行いたいです。 多数のファイルから1つの集計ファイルに値を読み込んできて書き込むサンプルはあるようですが、逆に1つのファイルから同一フォルダ内の多数のファイル(ブック)の特定場所に書き込むためのサンプルコードを教えていただけると大変助かります。 以上よろしくお願いいたします。

  • 可視セルから可視セルへのコピー

    エクセルのデータ集計で集計された数字(可視セル)を他のファイルの表にコピーしたいのです。 通常、編集→ジャンプから可視セルを選びコピー→形式を選択して貼り付けから値を選び 貼り付けているのですが、今回は表の方にも非表示にしている行があるのです。 なので通常の方法でやると表の方の非表示セルに値が貼りついてしまい困ってます。 可視セルの値を表の可視セルへコピーする方法はないのでしょうか?

  • 【Excel】 可視セルへの貼り付けについて

    【Excel】 可視セルへの貼り付けについて Excel2003および2007を使用しています。 ピボットにて集計したデータを別データに貼り付けしたいのですが、 その別データをフィルタで絞って、可視セルのみに貼り付けしたいのですが、 うまくいきません。 非表示のセルにも貼り付けされてしまいます。 可視セルのみに貼り付けできる何かいい方法はありますでしょうか? ちなみに貼り付け方法は 値のみ を希望です。 (例) ◎ ピボットデータ・・・  A B A B A B ◎ 貼り付け先データ・・・ A B C A B C A B C ・・・ABのみフィルタで絞って、ピボットデータを貼り付けしたい。 Cは非表示なので貼り付けしたくない。 よろしくお願いします。

  • 複数のブックのデータを一つのブックにまとめたい

    http://t_shun.at.infoseek.co.jp/My_Page/Excel-VBA/vba_page1.htm ↑の 7. 指定したフォルダ内にあるExcelファイルを検索して開く の部分のマクロを利用して、集計.xlsというブックで、複数のブックを開くようにしましたが、そのブックを開いた時にそのブックのSheet2の中のデータのみコピーして、集計.xlsに貼り付けたいのですが、どのようにすればよいのか困っています。 指定したフォルダの中には、回答01.xls 回答02.xls ・・・と16個のブックがあります。順番に開いてコピーをするときに、どのようにブック名とシート名を指定すればよいのかわからず困っています。 何か参考になるものがあれば教えてください。 よろしくお願いします。

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

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

  • 複数ブックの特定のセルを合計したいです

    中を見ていただき、ありがとうございます。 似たような質問・ご回答があるのは重々承知しておりますが できるだけシンプルなコードを教えていただきたく、質問させていただきました。 さて、いま1つのフォルダ内に,複数のブック(ファイル)が入っています。 すべてのブックはExcel2007で作成しており、目的の作業もExcel2007で行いたいです。 なお、それぞれのブックの名前に規則性はありません。 ブックの中身は統一されており、1ブック1シート、シート名は Sheet1 です。 このシートのB4からP4(横一列15個のセル)には、画像上段のように数値が入っています。 ここでやりたいのは、すべてのブックに入っているそれらの数値を平均して、 別に用意しておいた集計用のブックの同一セル(B4からP4)に入れるという作業です。 ブックを結合してから串刺し演算をしても良いのですが、できればマクロ一発で しかもできるだけシンプルなコードで以上を実現できれば嬉しいです。 過不足等ございましたら補足させて頂きますので、どうかお知恵をお貸しください。

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

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

専門家に質問してみよう