В автоматизации Excel, как изящно обрабатывать ошибки неверного формата файла при открытии файла?
Я пытаюсь открыть файл Microsoft Excel в программе на C#, используя метод excelApp.Workbooks.Open(). Как это бывает, если формат файла является недопустимым, этот метод вызывает отображение окна сообщения об ошибке. Я, однако, не хочу этого; Я хочу изящно обработать эту ошибку в своем собственном коде.
У меня вопрос, как мне это сделать?
Вышеуказанный метод не выдает никаких исключений, которые я могу поймать. Даже если бы это было так, в любом случае все еще есть это противное сообщение. Так что, возможно, единственный способ - проверить формат файла перед его открытием. Есть ли тогда другой метод в Excel API, чтобы позволить такую проверку?
1 ответ
Извините, я не могу смоделировать пример испорченного файла xls в Excel 2007.
Попробуйте Application.DisplayAlerts = False перед вызовом Workbooks.Open...
Если книгу невозможно открыть, возвращаемое значение будет нулевым.
(т.е. Workbook wkb = Workbooks.Open(....);
wkb будет нулевым, когда DisplayAlerts = False и файл не может быть открыт)
Это чисто на основе того, что я понимаю об объектной модели Excel.