
エクセルの複数ブックのシートを1つまとめたい
都道府県ごとに47ブックがあり、そのシートのデータを1つのブックの1シートにまとめたいのですが、どのようにすればよいかご教示いただけますでしょうか。
各ブック内には1シートのみ同じフォーマットで名簿があります。
またシート名とブック名はそれぞれ同じになります。
例
ブック名:埼玉県.xlsx
シート名:埼玉県
ブック名:神奈川県.xlsx
シート名:神奈川県
シートの内容は
1列目に見出しがあり、2列目から実際の情報になります。
A列からH列で行数は各ブックごとに異なります。
またシート情報を統合する際に1行目の見出しも統合されると47都道府県ごとに見出しが含まれてしまうので、最初のブックのみ1行目からで以降は2行目から統合させることは可能でしょうか。
No.5ベストアンサー
- 回答日時:
以下のマクロを標準モジュールに登録してください。
Const folder As String = "D:\goo\data8\点検"
は、都道府県のブックが格納してあるフォルダ名です。
あなたの環境にあわせて適切に設定してください。
まとめるシート名は「都道府県まとめ」にしてあります。
もし、シート名を変える場合は、
Set ms = Worksheets("都道府県まとめ")
を変えてください。
各都道府県のブックには1シートのみ存在する前提です。
-------------------------------------------------------------
Option Explicit
Public Sub 都道府県まとめ()
Const folder As String = "D:\goo\data8\点検"
Dim ms As Worksheet
Dim ws As Worksheet
Dim fname As String
Dim wb As Workbook
Dim msRow As Long: msRow = 1
Dim maxrow As Long
Set ms = Worksheets("都道府県まとめ")
ms.Cells.ClearContents
fname = Dir(folder & "\*.xlsx")
Do While fname <> ""
Set wb = Workbooks.Open(folder & "\" & fname)
Set ws = wb.Worksheets(1)
maxrow = ws.Cells(Rows.Count, 1).End(xlUp).Row
If maxrow > 1 Then
If msRow = 1 Then
ms.Range("A1:H1").Value = ws.Range("A1:H1").Value
msRow = 2
End If
ms.Cells(msRow, 1).Resize(maxrow - 1, 8).Value = ws.Cells(2, 1).Resize(maxrow - 1, 8).Value
msRow = msRow + maxrow - 1
End If
wb.Close
fname = Dir()
Loop
End Sub
No.2
- 回答日時:
こんにちは
各項目のデータが埋まっていると考えてよいのなら・・
1)対象ブックを開く
2)A2セルを選択し、Shift End → End ↓ キーを押し下げ
(2行目から最終行までの範囲が選択できるはず)
3)Ctrl + C でコピー
4)統合ブックで、Ctrl + V でペースト
要領よくやれば、以上で30秒くらいでしょうか。
のんびりやっても、1分でおつりがくると思います。
あれこれ考えている間に、これを47ブック分繰り返すのが速いと思います。
No.1
- 回答日時:
1ブック1シートであれば、
コマンドで、*.xlsを*.csvに一括で変換し、
同じくコマンドで、一つの*.csvに結合し、
それをEXCELで読み込めばよいです。
見出しも47行含まれてしまいますが、
並べ替えでまとめて、或いはフイルターで選択表示させて、
不要分を一括削除すればよいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルシートのデータを1列飛ばしで別ブックのシートに貼り付けるマクロが知りたい 2 2023/06/05 22:37
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) セルの値と同じ名前のシートのセルの結合を解除する方法を教えてください 3 2022/10/03 10:23
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Excel(エクセル) フォルダ内の複数ブックを同シート名毎に連結させたい 1 2022/04/07 21:24
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】アクティブセルの時...
-
VBAでブックを非表示で開いて処...
-
エクセルの関数 ENTERを押...
-
エクセルを共有するとPCによっ...
-
フォルダ内の複数ファイルから...
-
WorkBooksをオープンさせずにシ...
-
Excel(2010)のフィルターが保...
-
Excelでブックの共有を掛けると...
-
Excelファイルをダブルクリック...
-
Excelの新しい空白のブックを開...
-
別ブックから入力規則でリスト...
-
エクセルで参照しているデータ...
-
エクセルシートの一部を送りたい
-
Excelで複数ブックの同一セルに...
-
同じフォルダへのハイパーリン...
-
エクセル2016です。「ブッ...
-
「ブックの共有」を有効にして...
-
エクセルの複数シート間の計算...
-
Excelで、複数ブックの複数シー...
-
ブックの保護ができないんです...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】アクティブセルの時...
-
Excelの新しい空白のブックを開...
-
VBAでブックを非表示で開いて処...
-
エクセルの関数 ENTERを押...
-
エクセルを共有するとPCによっ...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
Excelでブックの共有を掛けると...
-
エクセルで参照しているデータ...
-
Excel(2010)のフィルターが保...
-
Excelの警告について
-
Excelで複数ブックの同一セルに...
-
フォルダ内の複数ファイルから...
-
同じフォルダへのハイパーリン...
-
エクセルにおける,「ブック」...
-
別ブックから入力規則でリスト...
-
エクセルで別ブックをバックグ...
-
エクセルでウィンドウの枠固定...
-
エクセルファイルを開かずにpdf...
-
「ブックの共有」を有効にして...
おすすめ情報
皆さん、ご回答ありがとうございます。
いただいた各回答に補足です。
各都道府県のブックは1つのフォルダに格納されてます。
また、ブック以外のファイルはなにもございません。
また、47対象なので、今回は手動で完了させましたが、以後も同様の処理をしなくて済むようにという背景がございます。
batファイル作成してcsvを統合させると文字化けしてしまい望んだ結果になりませんでした。
試したコマンドは下記です。
copy *.csv _result.csv