다음 코드를 사용하려고합니다 (이 사이트에서 복사 됨). 그러나 .FoundFiles.count가되면 "Object variable 또는 With 블록 변수가 설정되지 않았습니다."라는 오류가 발생합니다. 나는이 문제에 대한 해결책을 몇 시간 동안 수색했다. 나는 누군가가 설명 할 수 있는지 궁금해. 감사.파일 찾기에서 .FoundFiles.count에 오류가 발생했습니다.
Sub RunCodeOnAllXLSFiles()
Dim lCount As Long
Dim wbResults As Workbook
Dim wbCodeBook As Workbook
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False
On Error Resume Next
Set wbCodeBook = ThisWorkbook
With Application.FileSearch
.NewSearch
'Change path to suit
.LookIn = "C:\MyDocuments\TestResults"
.FileType = msoFileTypeExcelWorkbooks
'Optional filter with wildcard
'.Filename = "Book*.xls"
If .Execute > 0 Then 'Workbooks in folder
For lCount = 1 To .FoundFiles.Count 'Loop through all
'Open Workbook x and Set a Workbook variable to it
Set wbResults = Workbooks.Open(Filename:=.FoundFiles(lCount), UpdateLinks:=0)
'DO YOUR CODE HERE
wbResults.Worksheets("Sheet1").Range("B7").NumberFormat = "YYYY.MM.DD"
wbResults.Close SaveChanges:=True
Next lCount
End If
End With
On Error GoTo 0
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.EnableEvents = True
End Sub
XL의 어떤 버전을 사용하고 있습니까? 'Application.FileSearch'는 2007 년 이상에서 지원되지 않습니다. –
나는 2010 년을 사용하고 있습니다. 그래서 그것이 이유입니다. – user2200765
예. 아래 답변을 참조하십시오. 'Dir' 기능을 사용해보십시오. 그것을 일부 논리와 결합하면 당신이 얻은 것을 얻을 수 있습니다. –