这段代码假设在多个打开的文件上执行任务。这里call Donemovement
应该格式化该文件,而Call AllSingles
将文件带到适当的路径。像文件名是ABC然后它将其保存在ABC文件夹中,如果它的DEF然后它在DEF中。我想要一行代码,当一个文件以AllSingles
中未定义的名称打开时,该代码可以阻止代码运行。因为它无法将文件带到适当的文件位置。
Sub OpenAllWorkbooksnew()
Set destWB = ActiveWorkbook
Dim DestCell As Range
Dim cwb As Workbook
For Each cwb In Workbooks
Call donemovementReport
Call AllSingles
ActiveWorkbook.Close False
Next cwb
End Sub
答案 0 :(得分:1)
这个页面可能会帮助您解决问题吗? http://www.cpearson.com/excel/errorhandling.htm
答案 1 :(得分:0)
在运行时停止代码并不是一种好习惯。如果您的目标是处理所有映射文件并被提示任何未映射的文件,那么我建议静默记录未映射的文件。您可以使用FileSystemObject对工作表,输出窗口或文本文件执行此操作:See Here如果您使用开关案例保存到不同区域,则可以在Case Else
部分中编写失败映射的日志。
这允许程序运行而不会因为未映射的文件而不断观察它。然后,您可以返回,读取输出日志并映射所有失败的文件。