2017-05-31 11 views
0

このスクリプトがフォルダ内のブックをループすることがわかりました。複数のブック/ファイルでExcelマクロを実行

Sub OpenFilesVBA() 
    Dim Wb As Workbook 
    Dim strFolder As String 
    Dim strFil As String 

    strFolder = "c:\Temp" 
    strFil = Dir(strFolder & "\*.xls*") 
    Do While strFil <> vbNullString 
     Set Wb = Workbooks.Open(strFolder & "\" & strFil) 
     Wb.Close False 
     strFil = Dir 
    Loop 
End Sub 

マクロを「インポート」と呼ばれるPERSONAL.XLSBに設定しました。私のファイルは、xlsxとして保存された自分のコードのMicrosoft Excel CSVファイルです。

私の質問は、上記のコードを変更して、すべてのファイルでマクロを実行する方法です。私のマクロをどこに入れる?

感謝

+0

変更 'STRFIL = DIR(strFolder&「\ * .xls * ")'から 'strFil = Dir(strFolder&" \ *。csv * ")' – Jordan

+0

このコードにはどこにマクロを入れる必要がありますか? – user2017716

答えて

2

あなたはあなたのコードがWorkbooks.Open関数の後に移動する必要があります開いたワークブックに何かをしたい場合:

Sub OpenFilesVBA() 

Dim Wb As Workbook 
Dim strFolder As String 
Dim strFil As String 

strFolder = "c:\Temp" 
strFil = Dir(strFolder & "\*.csv*") 
Do While strFil <> vbNullString 
    Set Wb = Workbooks.Open(strFolder & "\" & strFil) 

    'Add your code here 

    Wb.Close False 
    strFil = Dir 
Loop 

End Sub 
+0

コード全体を追加する必要がありますか、マクロ名や何らかのリンクを提供する方法はありますか? – user2017716

+0

マクロの名前を使用します。あなたのサブが 'import'と呼ばれている場合は、必要なパラメータで' import'を追加するだけです。 – Jordan

関連する問題