2016-08-21 9 views
-1

.docxの特定のファイルのフォルダを探しています。私はXの名前をInputboxに入れ、シートYに行き、Xの次の右のセルを見て、これをWord(次のセルの右は開いたい単語のファイル)として開きます。それは動作していますが、問題はWord Docが複数のサブフォルダにある可能性があることです。これらのサブフォルダですばやく検索する方法はありますか?VBA、サブフォルダで検索

Private Sub CommandButton1_Click() 
    On Error GoTo ErrorHandling 
    Application.ScreenUpdating = False 
    Dim AppWD As Object 
    Dim SearchX As String 
    Dim SearchArea As Range 
    Dim Y As String 
    Dim sPath As String 

    sPath = "C:\Users\VS\Desktop\test" 

    SearchRule = InputBox("X") 
    Set SearchArea = Sheets("Look").Range("A:A").Find(what:=SearchX, _ 
     LookIn:=xlFormulas, lookat:=xlWhole) 

    ActiveWindow.Visible = True 
    Target = SearchArea.Offset(0, 1).Value 
    Set AppWD = CreateObject("Word.Application") 
    AppWD.Visible = True 
    AppWD.documents.Open (sPath & "\" & Target & "." & "docx") 

    ErrorHandling: Exit Sub 
End Sub 

答えて

1

throughtサブフォルダ

Sub searchSub() 
    Dim fso As FileSystemObject, fFile As File, fFolder As Folder 
    Dim fSubFolder As Folder, fPath As String, FileToSearch As String 

    Set fso = New FileSystemObject 
    FileToSearch = "SomeDocument.docx" 
    fPath = ThisWorkbook.Path 
    Set fFolder = fso.GetFolder(fPath) 

    For Each fFolder In fFolder.SubFolders 
      Set fSubFolder = fso.GetFolder(fFolder.Path) 

      For Each fFile In fSubFolder.Files 
       If fFile.Name = FileToSearch Then 
        'do something with file 
       End If 
      Next fFile 
    Next fFolder 
End Sub 
の検索のマイ取ります
関連する問題