A 回答 (3件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんなかんじでどうでしょうか。
新規にエクセルブックを作成してそのブックに以下のコードを入力してください。
マクロを実行すると各ブックのsheet1が集められます。シート名はブック名になります。
----------
Sub test()
Dim Fname As String
Dim Wbm As Workbook
Dim Wbs As Workbook
Application.ScreenUpdating = False
Set Wbs = ThisWorkbook
Fname = Dir(ThisWorkbook.Path & "\*.xls*")
Do While Fname <> ""
If Fname <> ThisWorkbook.Name Then
Workbooks.Open ThisWorkbook.Path & "\" & Fname
Set Wbm = ActiveWorkbook
Wbm.Worksheets("sheet1").Copy after:=Wbs.Worksheets(Wbs.Worksheets.Count)
ActiveSheet.Name = Left(Fname, InStr(Fname, ".") - 1)
Wbm.Close
End If
Fname = Dir()
Loop
Application.ScreenUpdating = True
End Sub
No.1
- 回答日時:
VBScript で作成してみました。
以下のコードをメモ帳で作成し、拡張子を vbs にして実行してください。
vbs ファイルの実行方法とかはご自分で探してください。
Option Explicit
' 統合したブックの保存名
Dim margedBookPath
margedBookPath = "D:\margedBook.xlsx"
' 対象ブック群が保存されているパス
Dim targetPath
targetPath = "D:\test"
' 対象ブックの拡張子
Dim targetExtension
targetExtension = "xlsx"
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
' 対象ブックが保存されているパスを参照
Dim targetFolder
Set targetFolder = fso.GetFolder(targetPath)
' Excel 起動
Dim xlApp
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
' 統合ブックを新規作成
Dim margedBook
Set margedBook = xlApp.Workbooks.Add
' 統合ブックの初期シート数を記憶しておく
Dim initialSheetsCount
initialSheetsCount = margedBook.Worksheets.Count
Dim targetBook
' 対象ブックが保存されているフォルダー内の全てのファイルを精査
Dim f
For Each f In targetFolder.Files
Dim targetSheet ' 対象ブック内のコピー対象シート
Dim copiedSheet ' 統合ブック内のコピーされてきたシート
' ファイルの拡張子が合致すれば
If fso.GetExtensionName(f.Name) = targetExtension Then
' 対象ブックを開き、1枚目のシートを統合ブックにコピーする (右端にコピー)
Set targetBook = xlApp.Workbooks.Open(f.Path, 0, True)
Set targetSheet = targetBook.Worksheets(1)
Call targetSheet.Copy(, margedBook.Worksheets(margedBook.Worksheets.Count))
' コピーされたシートの名前を変更
Set copiedSheet = margedBook.Worksheets(margedBook.Worksheets.Count)
copiedSheet.Name = fso.GetBaseName(targetBook.Name)
' 対象ブックを閉じる
Set targetSheet = Nothing
call targetBook.Close(False)
Set targetBook = Nothing
End If
Next
xlApp.DisplayAlerts = False
' 統合ブックから初期シートを削除する (左端の数枚)
Dim i
For i = 1 To initialSheetsCount
margedBook.Worksheets(1).Delete
Next
' 統合ブックを保存して閉じる
Call margedBook.SaveAs(margedBookPath)
Call margedBook.Close(False)
xlApp.DisplayAlerts = True
xlApp.Quit
Set xlApp = Nothing
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) VBA For Each 〜 複数条件について 3 2022/10/20 20:05
- Excel(エクセル) セルの値と同じ名前のシートのセルの結合を解除する方法を教えてください 3 2022/10/03 10:23
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) マクロで最終行を取得したい 4 2023/05/28 12:14
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) 複数のブックをひとつのブック(複数のシートにまとめる)場合にシートとの順番について 5 2022/12/28 20:47
- Excel(エクセル) エクセルの複数ブックのシートを1つまとめたい 都道府県ごとに47ブックがあり、そのシートのデータを1 5 2022/11/15 14:57
- Excel(エクセル) エクセルカレンダーに予定表を反映したいです。 6 2022/09/30 14:39
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
このQ&Aを見た人はこんなQ&Aも見ています
-
好きなおでんの具材ドラフト会議しましょう
肌寒くなってきて、温かい食べ物がおいしい季節になってきましたね。 みなさんはおでんの具材でひとつ選ぶなら何にしますか? 1番好きなおでんの具材を教えてください。
-
大人になっても苦手な食べ物、ありますか?
大人になっても、我慢してもどうしても食べれないほど苦手なものってありますよね。 あなたにとっての今でもどうしても苦手なものはなんですか?
-
忘れられない激○○料理
これまでに食べたもののなかで、もっとも「激○○」だった料理を教えて下さい。 激辛、でも激甘でも。 激ウマ、でも激マズでも。
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
エクセルで複数のシートをフォルダ化したい
Excel(エクセル)
-
VBSでExcelシートのコピー
Visual Basic(VBA)
-
VBSでフォルダ内のテキストファイルを全て連結するには?
その他(プログラミング・Web制作)
-
-
4
エクセルで多数のシートをまとめる方法
Excel(エクセル)
-
5
エクセルエラー13型が一致しませんの直し方教えて下さい。
その他(Microsoft Office)
-
6
複数のブックをひとつのブック(複数のシートにまとめる)場合にシートとの順番について
Excel(エクセル)
-
7
複数エクセルファイルの合成
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別ブックをダイアログボックス...
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
【ExcelVBA】zip圧縮されたCSV...
-
VBA 別ブックからコピペしたい...
-
ワイルドカード「*」を使うとう...
-
VBA コードを実行すると画面が...
-
【ExcelVBA】インデックスが有...
-
エクセル共有化のトラブル
-
ユーザーフォームの切り替えに...
-
ACCESSでExcelにデータ出力、高...
-
VBSでExcelのオープン確認
-
ADOで複数のBookから抽出
-
【VBA】全シートの計算式を全て...
-
VBAで別のブックにシートをコピ...
-
EXCEL VBA で現在開いているブ...
-
【Excel VBA】表の列の値毎に分...
-
VBAで別ブックのシートを指定し...
-
VBAで複数のブックを開かずに処...
-
VBA 実行時エラー 2147024893
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
VBA 別ブックからコピペしたい...
-
【ExcelVBA】インデックスが有...
-
VBA コードを実行すると画面が...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別のブックにシートをコピ...
-
VBA 実行時エラー 2147024893
-
VBA シート名が一致した場合の...
-
ユーザーフォームの切り替えに...
-
【マクロ】違うフォルダにある...
-
【Excel VBA】書き込み先ブック...
-
VBS Bookを閉じるコード
-
Excelマクロ 該当する値の行番...
-
VBAで複数のブックを開かずに処...
-
VBA アプリケーション定義また...
-
Excel2007VBAファイルの表示に...
おすすめ情報