我正在尝试使用'excelApp.Workbooks.Open()'方法在C#程序中打开Microsoft Excel文件。碰巧的是,如果文件的格式无效,则此方法会显示错误消息框。但是,我不希望这样;我希望在我自己的代码中优雅地处理这个错误。
我的问题是,我该怎么做?
上述方法不会抛出任何我能捕获的异常。即使它确实如此,仍然有那个讨厌的消息框。所以也许唯一的方法是在打开之前验证文件格式。那么,Excel API中有另一种允许这种验证的方法吗?
答案 0 :(得分:2)
很抱歉,我无法使用Excel 2007模拟损坏的xls文件示例。
在调用Workbooks.Open ...
之前尝试Application.DisplayAlerts = False如果无法打开工作簿,则返回的值将为null (即工作簿wkb = Workbooks.Open(....); 当DisplayAlerts = False并且文件无法打开时,wkb将为null
这完全基于我对excel对象模型的理解。