• 締切済み

エクセルで複数シートを一つにまとめる

初心者です。 ブック内の複数シートを一つにまとめたくていろいろ調べています。 複数シートをもつブックがたくさんあるのでマクロか何かで簡単にできたら・・・と思っています。 http://it.kndb.jp/entry/show/id/1020のソースをコピーさせていただいたりもしたのですが、ダメでした。 きっとソースのどこかでブックを指定するなり個々に使用するために変える部分があるんだろうと思ってみたりしたのですが、どこを適応させればいいのかわかりません。 初心者でもわかるシートのまとめ方もしくはサイトがあれば教えてください。

みんなの回答

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.3

ANO.1です。 例えば、”複数シート”で過去ログを検索してみると http://okwave.jp/search.php3?kw=%95%A1%90%94%83V%81%5B%83g&boolean=and&search_type=keyword&target_all=1&top_category_id=207&middle_category_id=218&small_category_id=232&date_filter=non&sort_type=date&blank_check=1 等が見つかります。 ここから更に”複数Book”に対して実行しなければなりません。 まず1つのBook内を纏める事から試していっては如何でしょう。 過去ログの中から類似した質問を探してみて、その質問事項と同じBookを作ってみて コードを作成・実行し意味を理解していく事が宜しいかと。 もし仕事上の事であれば上司に相談するのも必要かも知れないですね。

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

>複数シートをもつブックがたくさんあるので まあ質問表現からして、初心者であれば、ブックの数だけ、プログラムの実行を繰り返す、で満足してください。 (1)あるブックのシートをすべてまとめるのか、まとめないシートがあるのか。 (2)まとめるぐらいだから、列数は同じで内容は同列同士で対応していると思う。 シートの上部の見出しや、最終部の説明などありますか。 見出し行は全シート同じ数ですか。 (3)まとめたものは別ブックの1シートに刷るのか、同一ブック内の新シートでよいか こういうことが質問文に書けるようになってこそ、プログラムに着手できる。 どんなサイトを紹介しても、質問の例を修正できないようでは、役に立たないと思う。 ーー 例として参考に挙げておく。 Sub test01() Dim sh As Worksheet For Each sh In Worksheets If sh.Name = "累積" Then Else 'MsgBox sh.Name d = sh.Range("A65536").End(xlUp).Row 'MsgBox d dr = Sheets("累積").Range("A65536").End(xlUp).Row 'MsgBox dr sh.Range("A3:C" & d).Copy Sheets("累積").Range("A" & dr + 1) End If Next End Sub ーー 見出しは第2行まで、すべてのシートで同じとする。 前提はシートすべてA-C列。変えるには sh.Range("A3:C" & d).Copy のCをJとかに。 累積するシートのシート名は「累積」。1シート挿入すること。変えるなら上記コードのこの箇所をすべて変えること。 テストは毎回「累積」シートのセル内容をクリアしてやること。 「累積」シートの項目見出しはコードでもセットできるが、今回は手作業でやる前提。

marippe726
質問者

補足

(1)シートが複数あればまとめます。 (2)上部はA1~A6、B2~B6まで見出しがあり、最終部には合計が入っています。 どのシートもフォーマットは一緒で、A~G列にデータが入っています。 シートをまとめても元のシートにデータが残るなら最終部の合計はなくてもかまいません。(逆にあっても自分で消します) (3)まとめた結果は同一ブックの新シートがいいです。 質問の仕方すら分かっていないので本当に困ります。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

>複数シートをもつブックがたくさんあるのでマクロか何かで簡単にできたら・・・と思っています。 1つのBookにある複数のシートを纏める事以上に、複数のBookの複数のシートを纏める事は難しいです。 特にシートの指定・Bookの指定方法がわからず困惑されているのであれば、 質問の内容を具体的にされた方がよいかと。 例) ・複数のBookは同じフォルダにあるのかどうか、そしてどこにあるのか。 ・それぞれのBookの複数のシートは名前は同じか、全てのシートが纏める対象となるのか。 ・そもそもマクロ(VBA)の経験はどの程度なのか。 (初心者と言うと範囲が余りに広いような。。。私自身もVBAは初級レベルですし) ご参考まで。

marippe726
質問者

補足

パソコンで作業をし始めてから半年、それまで卒論で論文を書いたこととネットでちょっと調べ物をしたことしかなく、パソコンが苦手でした。 4月からエクセルでデータをまとめるようになり、マクロの記録というものを知って ・行を消す ・書式を設定する ・計算式を入れる ・VLOOKUPでデータを呼び出す という作業ができるようになりました。(ソースがわからないので単純作業のみ) 基礎がないのでソースも英語の意味でなんとなくこんな感じの事を表してるのかな・・・くらいしかわかっていません。 ちなみに複数のブックは同じフォルダにありますが、数が多すぎるらしく、二つのフォルダに別れてしまっています。 一つのブック内には1~3シートあり、シートの名前は異なります。 現在は1シートずつコピーして貼り付け×ブック数(約70)という作業で時間がかかってしまうので、 複数のシートを一つのシートにまとめられたら、と思い質問させていただきました。 質問の仕方もへたくそなので、具体的に出していただいて助かります。

関連するQ&A

  • 複数シートから列移動させながら貼り付け

    複数シートの同じ範囲からまとめシートへコピーして2列ずつ移動しながら貼り付ける方法教えてください。 まとめシート、シート2シート3シート4・・・・と複数あり(シート名はばらばら) 各シートのB4:F28の範囲をコピーし(この範囲は各シート同じ) まとめシートへ順に貼り付けたい。 シート2はまとめシートのF4へ、シート3はまとめのH4へ、シート4はまとめのJ4へ・・・と。 シートの名前が毎月変わるのとブック数も複数ありできたらマクロでできないかなぁと考えております。 今は   Sheets(2).Select Range("T7:U85").Select Selection.Copy Sheets(1).Select Range("F4").Select Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False まででこれを1個づつ書いていこうかなやんでおります。 いろいろ調べましたが、どうもマクロの組み合わせ方がいまいち判らないのでエラーばかり出てしまいます。 よろしくお願いします。

  • 複数のシートのデータをひとつのシートに纏める

    EXCELにおいて、複数のシートのA列のデータをひとつのシートにまとめるにはどのようなマクロを組めばよいのでしょうか。 (内容) ”Cycle1”SheetのA列をコピー⇒”まとめ”SheetのA列に貼り付け ⇒”Cycle2”SheetのA列をコピー⇒”まとめ”SheetのB列に貼り付け ⇒”Cycle3”SheetのA列をコピー⇒”まとめ”SheetのC列に貼り付け ⇒”Cycle4”SheetのA列をコピー⇒”まとめ”SheetのD列に貼り付け ・・・。 現在は、上記の内容を手動でやっており、シート数が多い場合大変です。 よろしくお願いします。

  • 【Excel 2003】複数のブックのシートを一つのブックにコピーにしたい

    お世話になっております。 【Excel 2003】を使っております。 複数のブックには、複数のシートがありまして、 複数のシートを一つのブックにコピーしたいのですが、 手作業ですと、大変時間がかかります。 現在は、一つ一つブックをあけて、シートのコピーで 一つの新しいブックにいれてます。 なにか、これを簡単にできる方法は、ありませんでしょうか? フリーのソフトでも、マクロでも、教えていただけたら 助かります。よろしくお願いします。

  • 複数のシートを一枚のシートに反映させる方法

    windowsのOffice 2013を使用しています。 エクセルにて複数あるシート(添付画像のもの)を、一つのシート(添付画像で言いますと、まとめという名前のシート) に複数のシートに入力したものを反映させたいと思っております。 調べたところ、マクロを使用した方法でしか出来ないとのことで色々試したものの、 上手く行かずご質問させていただきました。 マクロは全くの初心者です。 どなたかご教授頂けますと幸いです。

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

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

  • エクセル2007 マクロ シート 移動

    マクロ学習中のものです。 エクセル2007 マクロの複数のブックのシートをひとつのブックにまとめたいです。 ふつうにコピペすると、コピー先ではマクロが走りません、 どのようにすればよいか、アドバイスください!! よろしくおねがいします。

  • 複数のブックを新しいブSheet1にまとめたい

    以下のような回答を見つけましたが、制約があります。 http://okwave.jp/qa/q4225063.html 1.シートの見出しが各自違う 2.csvファイルである 2はマクロ中の拡張子をかえれば対応できると思うのですが、1はcsvに適応できるマクロなどあるのでしょうか。一括で複数のシート名を変えるマクロ教えていただけますか。

  • エクセルのマクロを使ってシートごとに名前をつけて保存したい

    マクロ初心者です。宜しくお願いします。 1つのブックにシートが複数あります。 それぞれシートをコピーして新しいブックを作成し そのブックに名前をつけて保存したいです。 例えばブック名が「売上管理」でそのシートが「A店」「B店」「C店」と3シートあるとします。 シート名:A店を他のブックにコピーしてマイドキュメントに名前を付けて 保存する場合のマクロを教えてください。 ちなみにその際のブック名は「シート名+任意のセル(D2)」と できれば一番助かります。 ちなみにD2のセルにはToday関数が入ってます。

  • エクセルで一つのブックにある複数のシートを一つのシートにまとめる。

    エクセルで一つのブックにある複数のシートを一つのシートにまとめる。 各シートには同じ形式の表(大きさも同じ)が1枚ずつあります。 それを一つのシートに、縦に並べて表示したい。 シートが100枚ぐらいありますので、ひとつひとつコピーするのは 大変です。 よろしくお願いします。

  • EXCELの複数シートをそれぞれ別ブックへ保存したい

    EXCEL97を使用しています。 1つのブック内に複数のシート(10~20枚)があります。 これを全て1シートずつの別のブックに分けて保存をするマクロを作成したいのですが、できますでしょうか? できれば各シート内の(A4)に入力されている文字列を各ブックの名前として使用したいのですが・・・。 (各シートのセルA4の値に重複はありません) 現在は各シートを新しいブックにコピーして名前を付けて保存、の作業をシート数分繰り返しています。 すみませんがよろしくお願いいたします。

専門家に質問してみよう