0

エクセルマクロ初心者です。

私は多くのファイルを含むフォルダーを持っています.A、B、Cと言います

それらはすべて、Summary という名前のワークシートを持っています。

Summary という名前の新しいファイルが必要です

各ファイルを反復処理し、要約ワークシートをコピーします...要約ファイルの別のワークシートに。

要約ファイルは、それぞれ独自の要約を持つ A、B、C という名前の 3 つのシートになります。

4

1 に答える 1

1

まず、ファイルのリストが必要です。別のスプレッドシートを使用してリストを保持するか、次のようにディレクトリをスキャンできます。

Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder("C:\temp")
s = ""
For Each fil In fld.Files
   s = s & fil.Name & vbCrLf 'a sample of doing something with each fil
   'here you can open each workbook using Application.Workbooks.Open

   'then, or later, if you like you can close the ones you opened
   'by remembering which workbooks were opened before you started.
Next

-- 参照: http://msdn.microsoft.com/en-us/library/aa242702%28v=vs.60%29

次に、新しいワークブックを作成する必要があります。これは、次を使用して実行できます。

Set newWkb = Application.Workbooks.Add()

-- 参照: http://msdn.microsoft.com/en-us/library/ff840478.aspx

これで、上記のポスターで説明されている手法を使用して、ワークシートを 1 つのワークブックから新しいワークブックにコピーできます。

参考までに、VBA 言語に関する有益な情報を次に示します。さまざまな関数、オブジェクト、メソッドなどを確認してください。言語リファレンス: http://msdn.microsoft.com/en-us/library/aa242702%28v=vs.60%29

Excel オブジェクト モデルに関する有益な情報は次のとおりです: http://msdn.microsoft.com/en-us/library/ff194068

于 2012-08-01T17:45:18.430 に答える