我是新來的網站,需要一些幫助。我在Excel中創建了一個宏,以便從工作簿中的某些單元格中提取值併合並該信息。該代碼似乎工作,除了它只是從文件夾中的大約一半的工作簿拉。有誰知道爲什麼它這樣做,我如何解決它?LoopThrough功能跳過文件
Sub LoopThroughDirectory()
Dim MyFile As String
Dim erow
Dim Filepath As String
Filepath = "T:\Sales Orders\2017\May\"
MyFile = Dir("T:\Sales Orders\2017\May\")
Do While Len(MyFile) > 0
If MyFile = "maytt.xlsm" Then
Exit Sub
End If
Workbooks.Open ("T:\Sales Orders\2017\May\" & MyFile)
Range("F1:F7").Copy
ActiveWorkbook.Close
ecolumn = Sheet1.Cells(Columns.Count).End(xlToLeft).Offset(0, 1).Column
ActiveSheet.Paste Destination:=Worksheets("Summary").Range(Cells(1, ecolumn), Cells(7, ecolumn))
MyFile = Dir
Loop
End Sub
它是否只從名稱以字母「A」開始到「L」的文件提取? – YowE3K
您可能會考慮放置文件掩碼,以便您只處理工作簿(例如'MyFile = Dir(「T:\ Sales Orders \ 2017 \ May \ *。xl *」)')。 Windows會把類似'thumbs.db'的系統文件放在一個像你一樣的循環中。 – Jeeped
YowE3K - 不,似乎沒有任何押韻或原因被跳過的文件。 –