• ベストアンサー

Excelのシートを集約したいのですが。。。

EXCELにて、複数のシートを1シートに集約したいのですが、 どうすればいいでしょうか? Sheet1からSheet10ぐらいの量だったので、範囲を指示してコピー&ペーストしていたのですが。。。 Sheet1からSheet50の量になると大変で困ってます。 1シートには印刷で1ページ分のデータが入っています。 Sheet1の内容の下にSheet2の内容を、その下にSheet3の内容という様にコピーしたいです。 何か、簡単なマクロ等有りましたら、教えてください。 VBAは使用した事がないのでよくわかりません。 よろしくお願いします。

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.4

空きシートがあるとエラーになりますので、こちらを使ってください。 空きシートを無視して次に行きます。 Sub 集約() Dim Rw As Long Dim Sh As Integer Sheets(1).Select For Sh = 2 To Sheets.Count   Rw = Range("A65536").End(xlUp).Row + 1 ' 1行ずつ空けるときは +2   Sheets(Sh).Select   If Range("A65536").End(xlUp).Row > 3 Then     Rows(4).Resize(Range("A65536").End(xlUp).Row - 3).Copy     Sheets(1).Select     Rows(Rw).Select     Selection.Insert Shift:=xlDown   End If Next Application.CutCopyMode = False Sheets(1).Select Range("A1").Select End Sub

2003tenn
質問者

お礼

本当に親切にありがとうございます。 とても、簡単に作業が進むので嬉しいです。 助かりました。 また、なにか有った時にはよろしくお願いします。

その他の回答 (3)

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.3

> 実はそれぞれのシートにタイトル部分があるのですが、 > それを含まない部分だけコピーする様に出来ますか? もちろん出来ますよ。 タイトル3行無視ですね。 Sub 集約() Dim Rw As Long Dim Sh As Integer Sheets(1).Select For Sh = 2 To Sheets.Count   Rw = Range("A65536").End(xlUp).Row + 1 ' 1行ずつ空けるときは +2   Sheets(Sh).Select   Rows(4).Resize(Range("A65536").End(xlUp).Row - 3).Copy   Sheets(1).Select   Rows(Rw).Select   Selection.Insert Shift:=xlDown Next Application.CutCopyMode = False Range("A1").Select End Sub

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

> EXCELにて、複数のシートを1シートに集約したいのですが、 > どうすればいいでしょうか? 次のマクロを実行すると一番左側のシートに集約になります。 一応、コードの設定方法を書いておきます。 Alt + F11 で、メニューから[挿入]-->[標準モジュール]で表示された コードウィンドウに下記コードをコピーして貼り付けます。 Alt + Q でシートに戻り、メニューから[ツール]-->[マクロ]-->[マクロ]で 「集約」を選択し、[OK]すれば、集約 になります。 Sub 集約() Dim Rw As Long Dim Sh As Integer Sheets(1).Select For Sh = 2 To Sheets.Count   Rw = Range("A65536").End(xlUp).Row + 1 ' 1行ずつ空けるときは + 2   Sheets(Sh).Select   Rows(1).Resize(Range("A65536").End(xlUp).Row).Copy   Sheets(1).Select   Rows(Rw).Select   Selection.Insert Shift:=xlDown Next Application.CutCopyMode = False Range("A1").Select End Sub Range("A1").Select End Sub  

2003tenn
質問者

補足

ありがとうございます。 出来ました。とても嬉しいです。 範囲を指定してコピーしていた事が、あっという間に出来るんですね。 ja7awuさん、実はそれぞれのシートにタイトル部分があるのですが、 それを含まない部分だけコピーする様に出来ますか? タイトルは、それぞれのシートの上から3行を使用しています。 お願いします。

  • cyobin_man
  • ベストアンサー率24% (298/1216)
回答No.1

>複数のシートを1シートに集約 これは 複数のファイルとして保管してあるものを 1つのファイルの中の 複数のシートとして 保存したいということでしょうか? 簡単ですが 労力を使う方法として 新ファイル(50シート重ねるほうを開いておいて) 1枚のみのファイル(移動される側)を開いて タブ(新規だとsheet1となっているところ)をドラックして 新ファイルの上に重ねてやれば 移動してくれます。 こんなんでいいのかな?

2003tenn
質問者

補足

早い回答ありがとうございます。 複数のシートと言うのは、同じBook内にあるシートです。 1Book内のシートの内容をすべてSheet1内に集めたいのです。 1BookにSheet1からSheet10まであるものを、1bookのSheet1内にまとめたいのです。よろしくお願いします。

関連するQ&A

  • エクセル マクロ 複数シートを集約

    複数のエクセルシートの同一範囲を集約シートに纏めたいのですが どうやったらできるのか教えてください。 (1)範囲はA1からL216まで (2)シート数は毎回変動 (3)集約シートにはシート1の内容の次の行からシート2の内容というふうに  ずらずらとデータを並たい 以上3点が要望としてあります。 いくつかのマクロを組み合わせて一つのマクロを作ろうとしたところ この部分だけうまくいかずに困っております。

  • エクセル 複数シートを一つに集約

    フォーマットが同じ複数のシートをひとつに纏める方法を教えて下さい。 行のタイトルなどは集約後に消せるので、シートまるごと集約シートの下に・・・下に・・・と追加したいのです。 良い方法がないでしょうか?

  • EXCEL 複数シートを1つのシートに集約する方法

    1つのブックに複数(30程度)の同一フォームのシートがあり、それらを1つのシートにまとめる方法があれば教えて下さい。 データを統合(集計)するわけではなく、単純にシート1の最後のデータの次の行にシート2のデータを追加、同様にシート3~最後のシートのデータを次々に追加したいのです。 手作業でデータをコピー&ペーストでももちろん可能ですが、結構時間がかかりますので簡単なマクロでできれば助かります。 よろしくお願いします。

  • エクセルで複数のシートの1枚目だけを印刷するには

    あるエクセルのファイルに50ほどのシートがあり、 各シートには2枚の印刷範囲があります。 複数のシートの1枚目だけを印刷したいのですが、 複数のシートを選択して、印刷メニューの印刷範囲のページ指定で 1枚目だけを指定すると、先頭のシートの1枚目しか印刷されません。 何か方法はありますでしょうか?? どなたかわかる方がおりましたら教えてください。 よろしくお願いします。

  • エクセル2007 各シートの内容を集約したい

    お世話になります。 職場で使用しているエクセルの表から、 各シートの内容をひとつにまとめて一度保存し、開こうとしたら壊れてしまい開けません。 添付した画像のように、シート「父」「母」「子」・・で家計簿的なものを入力している表です。 (シート名などはさし障りがあるため、変更しています。) 【やりたいこと】 シート「父」「母」「子」の「列1→列5」の箇所を1つのシートにまとめたい。 コピーペーストして一度1シートにまとめてみたのですが、 壊れて開けなくなってしまいました。 このシートの表は前任者から引き継いでおり(前任者は退職のため聞けず)、 表の設定のためか?と表上部のフィルタは外せたのですが、 下のフィルタは外せませんでした。 (プルダウンで「なし」「平均」等と表示されている箇所です) またこのデータはUSBで職場から家に持ち帰ってきて加工しています。 エクセルのバージョン(2007)は同じなのですが、それも問題があるのでしょうか。 補足の必要があればいたします。 よろしくお願いいたします。

  • エクセルで複数のシートにあるものをひとつに

    お世話になっております。 似たような質問を検索してみましたが、いまいち要領がつかめませんので教えて下さい。 ブックに複数のシートがあり、それをを同じブックまたは、別のブックでもいいので一つのシートにまとめたいのですが何かいい方法はありますでしょうか? ブックにより、シート枚数が違います(多いものは30シート以上)。 同じブックでの各シートの列のタイトルは同じで、行はデータ量により違います。(多いものは1000行以上) イメージとしては、シートを全コピーして、新しいシートにペースト。 次のシートを全コピーしてそれを、今ペーストした下の行にペースト。 現在はこのコピー&ペーストで地道に作業しております。 かなり時間を取られております。 XPでオフィスは2007を使用しております。

  • Excelのシートのコピー

    現在268枚のシートが入ったファイルがあります。 1つ1つのシートはそれほど情報量が多いわけでもなく、大体印刷すると1ページにおさまるほどの量で 色もあまり使っていなく、単なる文字&表くらいです。 このファイルにあるシートを「移動またはコピー」を選んでコピーをすると、エラーは出ませんが、コピーできません。 移動はできます。 単に「挿入-新規シート」を選ぶと新規にワークシートを挿入することは出来ます。 (試しに370枚までやってみましたが、何のエラーも出ませんでした。) また、このファイルのシートを「移動またはコピー」で他の新規ブックにコピーしようとしてもできません。 移動はできます。 手作業ではなく、VBAではどうかと思いやってみましたが、やはりコピーはダメで移動はOKでした。 これはいったいなぜなのでしょうか? Excelは2000です。 2台のPCで試してみましたが、どちらでもダメでした。

  • Excel 2シートを1枚に印刷したいです…

    こんにちは☆ タイトルの通りですが、Excel 2シート(各A4サイズ)をA3用紙1枚に印刷したいのですが、できません。 印刷する2シートを選択→印刷→プロパティ→集約(2ページを1ページに集約)としているのですが… 今の所、それぞれ各1枚ずつ計2枚が印刷されます。 使っているプリンターはRicohのimagio Neo C380 という機種です。 わかる方、ご享受よろしくお願いしますm(_ _)m

  • VBA_フォルダ内複数のExcelファイルの集約

    Excel VBAに関する質問です。 特定のフォルダ内(例としてC:\folder1)の複数のExcelファイルにおける シート(例としてSheet1)内のセル範囲A2:I1000の情報をコピーし、 特定のフォルダ内に格納されたExcelファイル(例としてC:\tougou\tougou.xls)の シート(例としてTOUGOU)内のA2を起点に貼り付け処理をしたいのですが、可能でしょうか? <貼り付けイメージ> (例)特定のフォルダ内(例としてC:\folder1)のExcelファイル数が2つの場合 A2 B2 ・・・・・I2 ・ ・ ・ ・ ・ A1999・・・・・・I1999 A2~I1999の範囲にデータが集約される。 どうぞよろしくお願いいたします。

  • Excelのシートを1枚にまとめる方法について

    Excelについて、日報のようなもので1つのファイル内に複数のシート(約30シート/1ファイル)が作成してあります。 これを1ページにまとめるような方法があればご教授ください。 コピー・ペーストで地道にやり始めましたが、操作ミスがあるような気がして、今一つ不安になってしまいます。 項目ごとに集計するのではなく、単純に縦に並べていきたいのです。 よろしくお願いします。

専門家に質問してみよう