你这段代码写得不简洁,是录制宏改的吧。
Workbooks.Open (ThisWorkbook.Path & "/" & I & ".xls")
这句应该有问题,“/”反向了。但不应该是“下标越界”的问题,具体哪句出现的问题呢?
Sheets("W").Select——这句如果循环打开的某个文件没有工作表“W”,会出现下标越界
在你的VBA代码中引用的下标不存在了,比如你原来有Sheets(5)或者Sheets("表格5"),这表格5不存在了或者名字改了;还有其他有引用下标的函数,下标出错等等...