我有一堆Excel文件,其中一些包含P3表,一些P2,很少都没有。 我尝试使用错误处理,但是如果连续两个文件没有P3。我在错误块内发生了错误。所以我试图用下一个简历或其他内容结束错误块。但是然后我将返回到错误发生之后。虽然我实际上想在错误处理块之后继续操作(不结束代码)。 有什么建议么? 还是最好使用其他方法来识别工作表的存在?
Do While myFile <> ""
Set wbCase = Workbooks.Open(Filename:=myPath & myFile, UpdateLinks:=0)
On Error GoTo Line2
Set wsCaseinfo = wbC.Worksheets("P3")
GoTo Line3:
Line2:
On Error GoTo Line0
Set wsCaseinfo = wbC.Worksheets("P2")
Resume Next
Line3:
On Error GoTo 0
...
some code doing stuff
...
On Error Resume Next
k = k + 1
wbNew.Sheets("Sheet1").Cells(k, 1) = wbC.Name
wbNew.Sheets("Sheet1").Cells(k, 2) = wsCinfo.Name
GoTo Line1
Line0:
wbNew.Sheets("Sheet1").Cells(k, 3) = "Fail"
Resume Next
Line1:
wbC.Close SaveChanges:=False
'Get next file name
myFile = Dir
Loop
答案 0 :(得分:1)
您可以执行以下操作:
> tree /F
├───Depotauszug
│ blah Depotauszug 2017-10-15.pdf
│
├───Kapitalmaßnahmen
│ test Kapitalmaßnahmen 2016-04-08.pdf
│
├───Kontoauszug
│ baz Kontoauszug 2018-01-30.pdf
│
├───Other
│ foo other 2019-05-19.pdf
│
├───Wertpapierabrechnung
│ foo Wertpapierabrechnung 2017-10-15.pdf
│
└───Wertpapierertrag
bar Wertpapierertrag 2016-04-08.pdf