
お世話になります。
複数のブックをひとつにまとめるという質問は過去にもたくさんあったのですが次の場合の対処がわかりませんでしたので教えてください。
なお手動でやるのではなく、マクロやフリーソフトなどで自動化したいと思っています。
1つのフォルダに複数のブックがあり、各ブックには複数のシートがあります。各ブックの先頭シート(一番左のシート)だけを1つのブックにまとめたいのです。
現在、各ブックの先頭シート(一番左のシート)の名前には「人の名前」が入っています。
1つにまとめるブックを 全員.xls として、このブックの各シートに各ブックの先頭シート(一番左のシート)の名前(人の名前)をつけて保存したいのです。
結合する際に「人の名前」のようにシート名が違うことが問題になるならば、すべてのブックのSheet1だけをまとめるというやり方でも構いません。
この場合、全員.xlsの各シート名は適当でも良い。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
一番左のワークシートはシート名にかかわらず、Worksheets(1)で取得できるので、
全員.xlsの標準モジュールに以下のような感じで出来ると思います。
各ブックと全員.xlsは同じフォルダにあるものとします。
Sub test()
Dim FSO As Object
Dim fName As File
Dim MyFolder As String
Dim wBook As Workbook
MyFolder = ThisWorkbook.Path
Set FSO = CreateObject("Scripting.FileSystemObject")
For Each fName In FSO.GetFolder(MyFolder).Files
If FSO.GetExtensionName(fName) = "xls" And _
FSO.GetBaseName(fName) <> "全員" Then
Set wBook = Workbooks.Open(fName)
wBook.Worksheets(1).Copy _
after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
wBook.Close
End If
Next
Set FSO = Nothing
Set wBook = Nothing
End Sub
この回答への補足
ご回答ありがとうございます。2行目のDim fName As File のところでユーザー定義型が定義されてません のエラーが出ました。この行を削除したら問題なく動きました。あと、デスクトップ上では問題なく動きますが、サーバー上では結合するブックを見つけられないというエラーがでます。もしよろしければアドバイスください。
補足日時:2006/04/04 21:51No.2
- 回答日時:
>2行目のDim fName As File のところでユーザー定義型が定義されてません のエラーが出ました。
ごめんなさい。
当初はWindowsScriptHostObjectModelに参照設定して、
Dim FSO As New FileSystemObject としていたものですから・・・。アップする前に修正するのを忘れてしまいました。
Dim fName As Object に修正します。
>デスクトップ上では問題なく動きますが、サーバー上では結合するブックを見つけられないというエラーがでます。
結合する各ブックと、マクロブック(全員.xls)の位置関係はどうなっていますか?
同じフォルダにあれば、問題なく動くと思いますが・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを共有するとPCによっ...
-
VBAでブックを非表示で開いて処...
-
エクセルの関数 ENTERを押...
-
エクセルで参照しているデータ...
-
「ブックの共有」を有効にして...
-
EXCELで複数のブックの特定のセ...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
Excel(2010)のフィルターが保...
-
同じフォルダへのハイパーリン...
-
フォルダ内の複数ブック・シー...
-
VBA:ワークブックを変数でActi...
-
VBAマクロで作成した新規ブック...
-
vbaでpdfを開いて1ページ目のみ...
-
フォルダ内の複数ファイルから...
-
エクセル 複数のブックを一度...
-
エクセルファイルをオープンし...
-
Excelでブックの共有を掛けると...
-
【マクロ】【VBA】同じフォルダ...
-
エクセルでウィンドウの枠固定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】アクティブセルの時...
-
Excelの新しい空白のブックを開...
-
VBAでブックを非表示で開いて処...
-
エクセルの関数 ENTERを押...
-
エクセルを共有するとPCによっ...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
Excelでブックの共有を掛けると...
-
エクセルで参照しているデータ...
-
Excel(2010)のフィルターが保...
-
Excelの警告について
-
Excelで複数ブックの同一セルに...
-
フォルダ内の複数ファイルから...
-
同じフォルダへのハイパーリン...
-
エクセルにおける,「ブック」...
-
別ブックから入力規則でリスト...
-
エクセルで別ブックをバックグ...
-
エクセルでウィンドウの枠固定...
-
エクセルファイルを開かずにpdf...
-
「ブックの共有」を有効にして...
おすすめ情報