• ベストアンサー

EXCEL 別のファイルからシート抽出をしたい

お世話になります。 業務上、毎日、EXCELファイルが作成されます。 (1.xls、2.xls、3.xls・・・というように、毎日段々と増えていきます) それとは別のEXCELファイルを一つ作成して、次のことをしたいと思っています。 ・1.xls、2.xls、3.xls・・・のように、複数あるファイルの中から、一つのファイル、シートを指定し、  シートの内容をそのまま抽出したい。(なお、抽出したいシートの名前は毎回違います) よろしくお願いします。

質問者が選んだベストアンサー

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

マクロの記録ででも出来ないか考えましたか。全く丸投げでしょう。 WEBでも「VBA 他ブック へシートのコピー」でGoogleででも照会すれば記事が載っている。 下記ではyyyyy.xlsの標準モジュールに Sub test01() Application.ScreenUpdating = False Workbooks.Open (ThisWorkbook.Path & "\" & "xxxxx.xls") Worksheets("検索表").Copy _ After:=Workbooks("yyyyy.xls").Sheets(1) ActiveWorkbook.Close Application.ScreenUpdating = True End Sub xxxxx.xlsのシート「検索表」を、yyyy.xlsのシート1晩左の次にコピー。 指定したシートを1シートに(下の行に次々継ぎ足す)累積していきたいのではないでしょうね。 「抽出」といっているが、「指定した」の方が相応しい用語ではないのか。 あるいは何か条件を付けてデータを抽出するのか。そのことは質問に何も書いてないが。質問なんだから用語に注意。 ーー ブックを開かずになんて色気を出さないこと。

kumachan1027
質問者

お礼

回答ありがとうございます。 >マクロの記録ででも出来ないか考えましたか。全く丸投げでしょう。 →おっしゃる通り、丸投げで申し訳有りません。  検索をして類似質問内容を見つけたのですが、全くVBAがわからないため、  それを改良して・・・ということができませんでした。 >指定したシートを1シートに(下の行に次々継ぎ足す)累積していきたいのではないでしょうね。  →累積の必要はありません。指定したFILEの1シートをコピーできれば、そこまででOKです。 教えて頂いたVBAを試してみます。 ありがとうございました。

その他の回答 (4)

  • hide_m
  • ベストアンサー率13% (3/23)
回答No.5

(1)コピーする(原本)のシートをアクティブにする (2)編集をクリック (3)コピーまたは移動を選択 (4)コピー元を選択 (5)チェックボックスにチェックを入れる (6)OKをクリック (7)アラ不思議完成です。

kumachan1027
質問者

お礼

回答ありがとうございます。 今回、理由があって、コピーする原本をアクティブにしない状態で、 ファイル名&シート名の指定のみでコピーしたいです。

回答No.4

こんにちは ここは質問コーナーです。 まったく質問の内容が書かれていないのですが・・ やりたいことだけ書いて、お願いしますはないと思いますよ。 ご自身でマクロで作って見るなりしてから、どこが上手くいかないのか 質問してください。

  • yy_kd
  • ベストアンサー率25% (5/20)
回答No.2

とりあえず、Fileのリストと各Fileに含まれるシート名を表示して 必要なシートを指定する。次に行いたいことはシートのコピー?なのかな。 コピーの仕方もいろいろある。選択されたシートを各ページごとコピー? 又は選択されたシートを1ページに纏めてコピーするとか・・・・

kumachan1027
質問者

お礼

回答ありがとうございます。 >とりあえず、Fileのリストと各Fileに含まれるシート名を表示して >必要なシートを指定する。次に行いたいことはシートのコピー?なのかな。 →シートをコピーということでOKです。 >コピーの仕方もいろいろある。選択されたシートを各ページごとコピー? >又は選択されたシートを1ページに纏めてコピーするとか・・・・ →説明が至らずに申し訳ありません。  FILEは複数毎日増えますので複数ですが、各FAILEのシートは1シートのみです。  ので、その指定したFILEの1シートのみをまるっとコピーできれば、と思っております。      よろしくお願いします。

  • hide_m
  • ベストアンサー率13% (3/23)
回答No.1

質問についての質問です。 >>シートの内容をそのまま抽出したい コピーしたいということですか?

kumachan1027
質問者

お礼

回答ありがとうございます。 >>シートの内容をそのまま抽出したい >コピーしたいということですか? →シートをまるまるコピーということでOKです。  よろしくお願いします。

関連するQ&A

  • 複数のExcelファイルにある同名シートを1つのシートに一括でまとめるには?

    フォルダの中に複数のExcelファイルがあり、それぞれのExcelファイルには「All」という名前のシートが存在します。そこで、複数ファイルにあるこのシートのデータをすべて1つのシートにまとめたいと思います。具体的には、「合体.xls」というExcelファイルからマクロを実行し、「合体.xls」に存在する「pAll」という名前のシートにシート「All」の全データを入れたいです。どのようにすれば実現できますか?

  • Excelのファイルからシート毎にファイルを作成する方法

    複数のシートで構成されているひとつのExcelファイルからシートごとに分割してファイルを作成(保存したいです) 具体的には、 ファイル名 file.xls  含まれているシート Sheet1 Sheet2 Sheet3 このfile.xlsから自動でSheet1.xls Sheet2.xls Sheet3.xlsという ファイルを作成してそれぞれのシートだけを保存する方法があれば教えてください。 標準の機能でなければ、フリーソフトなど別のソフトを使った方法でもかまいません。

  • エクセル 別ファイルから シートを リンクを張らずに コピーしたい

    エクセル2003 1~4  はファイルの状態の説明です。 やりかたを質問したい部分は 5です。  1、ファイル(ブック)A.xls → 計算式が大量に入った数シートからなるファイル があるとする。 2、A.xls を そのままコピーし コピーされたファイルは B.xls に リネーム。 3、A.xls は 計算式等は変更しないが、データを変更し通常業務で使用。 4、A.xls の新バージョンを作るために B.xls を使って計算式等を編集。 (複数あるシートのうち一部シート(シート名 「あいうえ」 とする)のみの変更に加え さらに新シート「さしすせ」を作成) 5、A.xls のシート名 「あいうえ」をB.xlsで作った シート名 「あいうえ」と置き換え、 さらに新シート「さしすせ」もB.xlsからコピーして追加する。   普通にシート名 「あいうえ」や 新シート「さしすせ」を選択し  コピーを行うと B.xls からリンクを張った状態でコピーされて  しまう。たとえば シート「あいうえ」セルA1の中身を見ると  =[B.xls]あいうえ!A1*2+1 といったように [B.xls]が付いて  コピーされる。  これを回避して、単にそのまま丸ごと(A.xlsの中だけで編集したかのように) シートをコピーするにはどうしたら よいのでしょうか?  長くなってすいません。  よろしくおねがいいたします。  

  • エクセル フィルタ オプションを使い別シートへ結果を抽出したいのですが。

    お尋ねいたします。 EXCEL2003を利用しています。 フィルタオプションでの抽出先を別シートに指定したいと思います。 名前の定義づけをつかうのでしょうか。 できれば名前の定義なしで別シートを抽出先として指定したいのです。 どうか教えてください。

  • エクセルでデータを別シートに抽出して印刷したい

    エクセルでデータを別シートに抽出して印刷したい 急ぎの仕事でやり方がわからず困っています。 sheet1からsheet2にデータを抽出し、 I列の名前が変わるごとに1シート作成し印刷したいと考えています。 関数で考えてみたのですがうまくできなく挫折してしまい、 お力をいただけないかと思い書き込みました。 よろしくお願いいたします。

  • Excel VBA別ブックのシートをコピーするには

    Excel2010のVBAで別ブックのシートをコピーしてくる方法 Excelファイル(C:\test\BOOK2.xls)のシート名が TESTというシートを自分のExcelファイル(C:\doc\BOOK1.xls)に コピーするにはどのように記述すればよいのでしょうか。 ・コピー先:自分のExcelファイル(C:\doc\BOOK1.xls)  VBAのコードがあるファイルです ・コピー元:C:\test\BOOK2.xlsのTESTシート  なお、TESTシートを持つ同じ名前(BOOK2.xls)のファイルが  別フォルダにもあります   Workbooks( )の引数にファイル名(BOOK2.xls)は指定できるのですが、 フルパス名(C:\test\BOOK2.xls)で指定できないので困っています。

  • 複数のエクセルファイルとシートからデータ抽出したい

    すみませんが教えてください! 複数のエクセルファイルがあり、それぞれに複数のシートがあります。 (ファイルによってシート数は異なります) そのすべてのファイル/シートから、C列の最後の行のデータを抽出し、集計ファイルに書き出したいのです。 書き出しのフォーマットは3セル使用して、ファイル名、シート名、データとしたいです。 すみませんが、よろしくお願いいたします。

  • Excelデータを別のExcelファイルに引っ張ってシート別に一括で変更したい

    教えてください。 Excelのファイルから別のExcelファイルにデータを引っ張りたいのですが ='[ファイル名.xls]1'!$A$1 と入力するとデータを引っ張ってこれるのですがこのデータ元のファイルの別ページの 同じセルからもデータを引っ張って来たいのですがシートが複数ページあり 1つ1つのリンク先を変更していくのが面倒です ↓↓↓↓↓ ='[ファイル名.xls]1'!$A$1 ='[ファイル名.xls]2'!$A$1 ='[ファイル名.xls]3'!$A$1 ='[ファイル名.xls]4'!$A$1 ='[ファイル名.xls]5'!$A$1 ↑こんな感じで一気に変更したいのですが 何か簡単なやり方はありますでしょうか?? ちなみにExcelは2003です。

  • エクセルで検索し別シートに抽出したい。2007

    http://okwave.jp/qa/q6798171.html 昨日上記URLで質問させて頂き、無事問題は解決。しばらく思い悩んだ件も解決し喜び表を作成していたのですが、大事な事を質問していなかった事に気がつき再度質問させて頂ければと思います。 先のタイトル通りご教授頂いたおかげで、別シートへデータを抽出することができました。 ただ、Sheet1からSheet20まであり、(肝心の部分を書洩らしていました。)残りの19Sheetについては抽出できませんでした。(Sheetは1~20までが同じフォーマット、サイズのもの。別途5Sheetは全く違うもの) 何故かと思い、教えて頂いたVBAを見て調べたところ、標準モジュールへ記述したとき最前面に表示されているワークブックのWorkbookオブジェクトを参照します。との記述を発見し、色々と試してみましたが一度に複数シートを検索抽出する事はできませんでした。 下記で指定したシート名を変更することで、残りのシートも抽出する事は出来たのですが、毎回の作業となるとかなりの時間を要しますので出来れば、指定したシート名を一度に処理出来ればと思います。 Set wS = Worksheets("Sheet2")別シート名へ変更 Application.ScreenUpdating = False With Worksheets("Sheet1")別シート名へ変更 度々の質問で申し訳ありませんがよろしくお願いします。

  • 複数のエクセルファイルに、決まったシートを一括挿入

    複数のエクセルファイルに、決まったシートを一括挿入 エクセルが100ファイルあるのですが、この100ファイルに「A.xls」のシートを一度にコピーできるソフトかプログラムがあるでしょうか 下記のようなイメージになります 1つ1つ「シートの移動とコピー」をするには多すぎて・・・ よろしくお願いします 001.xls←┬A.xls 002.xls←┤ 003.xls←┤ 004.xls←┤ 005.xls←┤ 006.xls←┤ 007.xls←┘

専門家に質問してみよう