
フォルダ内の複数ファイルから、特定セルだけを抽出し、並び替えて集約したい
VBA初心者です。
VBAが書かれたブックと同一フォルダ内にある200個のブックから、特定セルの値を取得し、1つのブックに集約したいです。全てのブックを1つ1つ開いて手作業でコピペするのが大変な為、何かVBAで良い方法はありませんでしょうか? この作業は毎月発生します。まだ凄く簡単なマクロしかわからない為、具体的なコードを書いて頂けると嬉しいです。
1つのファイルに社員3人分のデータが入っています。
集約の際は、これを縦方向に集約したいです。
言葉で上手く説明できないため、画像を添付します。
画像上半分は集約元のブックの内容です。200個全て同じように入力されています。
画像下半分は集約後のブックイメージです。
◆集約元ブック
nameという名前のシートしかありません。
<取得したいセル>
C列 C4~C5と、C9~C11
D列 D4~D5と、D9~D11
E列 E4~E5と、E9~E11
◆集約先ブック
集約シートという名前のシートしかありません。
A2セルから書き始めたいです。
◆PC環境
Windows10Pro 64bit
office2013

No.2ベストアンサー
- 回答日時:
こんばんは
既に回答がありますが、一例として配列での処理方法です
Sub Sample()
Dim folderPath As String, fname As String
Dim n As Long, i As Long
Dim Ary()
folderPath = ThisWorkbook.Path & "\"
fname = Dir(folderPath & "\" & "*.xlsx")
Do Until fname = ""
Application.ScreenUpdating = False
With Workbooks.Open(folderPath & fname)
For i = 3 To 5
ReDim Preserve Ary(4, n)
Ary(0, n) = Cells(4, i)
Ary(1, n) = Cells(5, i)
Ary(2, n) = Cells(9, i)
Ary(3, n) = Cells(10, i)
Ary(4, n) = Cells(11, i)
n = n + 1
Next
.Close SaveChanges:=False
End With
fname = Dir
Loop
With ThisWorkbook.Worksheets(1)
.Range("A2").Resize(UBound(Ary, 2) + 1, 5) = _
Application.Transpose(Ary)
End With
Application.ScreenUpdating = True
End Sub
ありがとうございます。
配列ですね。配列は、なんだかとっても難しそうなイメージでしたが、ご教示頂いたコードは応用で他のものにも使えそうなので、こちらをベストアンサーとさせて頂ければと思います。
教えて頂いたコードで試したら、バッチリ集約出来、これで毎月の作業にかかる時間が短縮できミスもなく作業が進み楽になるので、大変助かりました。
No.1
- 回答日時:
こんばんは
なんだか、ほとんど同じ内容の質問に今日回答したような記憶が・・・
不明点はテキトーです。
あとは、ご随意に。
Sub Sample_Q12359472()
Dim fName As String, rng
Const folderPath = "C:\hogehoge\test" ' 指定フォルダパス
Application.ScreenUpdating = False
Set rng = Worksheets(1).Range("A2:H4")
rng.Worksheet.Rows("2:" & Rows.Count).ClearContents
fName = Dir(folderPath & "\*.xlsx")
While fName <> ""
With Workbooks.Open(folderPath & "\" & fName)
.Worksheets(1).Range("C4:E11").Copy
rng.PasteSpecial Paste:=xlPasteValues, Transpose:=True
Set rng = rng.Offset(3)
.Close False
End With
fName = Dir()
Wend
rng.Worksheet.Range("C2:E2").Resize(rng.Cells(1, 1).Row).Delete (xlShiftToLeft)
Application.ScreenUpdating = True
End Sub
ありがとうございます。
fujillinさんの他の方への回答を見たら、確かに似たような質問に回答なさってましたね。大変失礼しました。コードをご教示いただき、大変助かりました。
全ての範囲を集約したいブックに貼り付けて、最後に不要列を削除するという発想は、自分には思いつきませんでした。勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】同じフォルダ内にある複数ブックから1つのブック内の1シートにデータを集めたい 6 2022/09/28 18:16
- Excel(エクセル) EXCEL マクロで 同じフォルダ内の複数ファイルの複数行全体を選択して1つのファイルに集約 4 2022/09/27 18:41
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- Excel(エクセル) Excelの複数ファイルの複数行を別ファイル1つのシートにVBA、マクロで集約する方法 5 2022/09/13 06:30
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Excel(エクセル) 【VBA】複数ブックから特定のシートを抽出して一つのブックに集約するマクロについて 3 2022/09/04 15:05
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Visual Basic(VBA) VBAの参照先のファイル名をセルに書いて代入したい 2 2022/04/04 13:42
このQ&Aを見た人はこんなQ&Aも見ています
-
今年はじめたいことは?
今年はこれをはじめたい!ということを教えてください!
-
いちばん失敗した人決定戦
あなたの「告白」での大失敗を教えてください。
-
あなたの「プチ贅沢」はなんですか?
お仕事や勉強などを頑張った自分へのご褒美としてやっている「プチ贅沢」があったら教えてください。
-
洋服何着持ってますか?
洋服を減らそうと思っているのですが、何着くらいが相場なのかわかりません。
-
一番好きなみそ汁の具材は?
みんなで大好きなみそ汁の具材について語り合おうよっ!
-
ブックを開かずに、フォルダ内にある複数ブックの、特定セルの値を抽出した
Excel(エクセル)
-
複数エクセルから特定シートの特定行だけを別シートに抽出するマクロ
Excel(エクセル)
-
複数のExcelブックから特定シートの特定セル抽出
その他(Microsoft Office)
-
-
4
Excelで複数ブックの同一セルに同じ値を入力するにはどうすればよいですか?
Excel(エクセル)
-
5
別ファイルを開かず、INDIRECT関数を使用せずに、別ファイルのデータを求めたい
Excel(エクセル)
-
6
複数ファイルから特定シートのコピー
Excel(エクセル)
-
7
エクセル関数>参照ファイル名をセルから呼び出す
Excel(エクセル)
-
8
エクセルでファイルを開かずに文字を検索し、行を抽出したい
Excel(エクセル)
-
9
【VBA】コピー&複数個所のペースト繰り返し
Excel(エクセル)
-
10
【至急】エクセルで複数のファイルから文字列を検索、行全てを抽出する
Excel(エクセル)
-
11
Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい
Excel(エクセル)
-
12
ExcelのVBAで同一フォルダ内にあるファイルに同じ処理をしたい
Excel(エクセル)
-
13
【マクロ】違うフォルダにあるファイルから、転記するには?
Excel(エクセル)
-
14
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
-
15
VBAで複数のブックを開かずに処理する方法
Visual Basic(VBA)
-
16
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
17
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
18
複数のセルをコピーし、別シートの任意のセルへペーストをするためのマクロ
Excel(エクセル)
-
19
EXCELで2つの数値のうち大きい方を採択する数式
Excel(エクセル)
-
20
【ExcelVBA】全シートのセルの数式を値に変換する事は可能でしょうか?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを共有するとPCによっ...
-
Excelの警告について
-
エクセルの関数 ENTERを押...
-
VBAでブックを非表示で開いて処...
-
WorkBooksをオープンさせずにシ...
-
Excelファイルをダブルクリック...
-
Excelでブックの共有を掛けると...
-
Excel(2010)のフィルターが保...
-
ブックの保護ができないんです...
-
エクセルにおける,「ブック」...
-
Excelで複数ブックの同一セルに...
-
エクセルファイルを開かずにpdf...
-
VBA:ワークブックを変数でActi...
-
エクセル 複数のブックを一度...
-
同じフォルダへのハイパーリン...
-
フォルダ内の複数ファイルから...
-
ブックのピボットを別ブックに...
-
エクセルでウィンドウの枠固定...
-
【マクロ】【VBA】同じフォルダ...
-
エクセルVBAでブックを相対パス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの警告について
-
エクセルを共有するとPCによっ...
-
エクセルの関数 ENTERを押...
-
VBAでブックを非表示で開いて処...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
エクセルファイルを開かずにpdf...
-
Excelでブックの共有を掛けると...
-
Excelで複数ブックの同一セルに...
-
同じフォルダへのハイパーリン...
-
エクセルで参照しているデータ...
-
Excel(2010)のフィルターが保...
-
フォルダ内の複数ファイルから...
-
印刷しようとすると強制終了に...
-
ブックのピボットを別ブックに...
-
フォルダ内の複数ファイルから...
-
エクセルで「ディスクがいっぱ...
-
エクセルでウィンドウの枠固定...
-
エクセルファイルをオープンし...
-
エクセルにおける,「ブック」...
おすすめ情報