2012-06-22 8 views
9

内のすべてのファイルは私が持っている問題はそれだけで最初のファイルを開こうとし続けるということです指定したフォルダ内のすべてのファイルを開き、次のコードマクロ - 開いているフォルダ

Sub OpenFiles() 
Dim MyFolder As String 
Dim MyFile As String 
MyFolder = "\\ILAFILESERVER\Public\Documents\Renewable Energy\FiTs\1 Planning 
      Department\Marks Tracker\Quality Control Reports" 
MyFile = Dir(MyFolder & "\*.xlsx") 
Do While MyFile <> "" 
Workbooks.Open Filename:=MyFolder & "\" & MyFile 
Loop 
End Sub 

を持つようにしたいですフォルダを繰り返して移動しません。誰でも助けることができる、私はVBAの初心者のビットであり、本当にいくつかの援助で行うことができます。私はすべてxlsx形式の約30のレポートを開こうとしています。事前に多くの感謝。

+0

フォルダ内のすべてのファイルを同時に開きますか? –

答えて

20

は、あなただけのloop

MyFile = Dir 
Loop 
+0

こんにちはSiddharth、それは完璧に動作します。ありがとうございました –

+4

こんにちは、ロスと歓迎StackOverflow!ここでは、回答の隣にある「回答として受け入れる」ボタンをクリックすることで人々に感謝することが慣例となっています。大きなチェックマークのような形をしています。このようにして、あなたのヘルパーはあなたを助ける報酬として得点を得、あなたは有益なQ&Aページに貢献したことを信じています。 –

1

は、以下のコードを試してみてくださいする前にこの行を追加する必要があります。

Sub opendfiles() 

Dim myfile As Variant 
Dim counter As Integer 
Dim path As String 

myfolder = "D:\temp\" 
ChDir myfolder 
myfile = Application.GetOpenFilename(, , , , True) 
counter = 1 
If IsNumeric(myfile) = True Then 
    MsgBox "No files selected" 
End If 
While counter <= UBound(myfile) 
    path = myfile(counter) 
    Workbooks.Open path 
    counter = counter + 1 
Wend 

End Sub 
0

あなたがループチェック文でLen(StrFile) > 0を使用することができます!

関連する問題