Excel Automation에서 파일을 열 때 유효하지 않은 파일 형식 오류를 우아하게 처리하는 방법은 무엇입니까?
문제
'ExcelApp.works.open ()'메소드를 사용하여 C# 프로그램에서 Microsoft Excel 파일을 열려고합니다. 발생하는 경우 파일 형식이 유효하지 않으면이 메소드로 인해 오류 메시지 상자가 표시됩니다. 그러나 나는 그것을 원하지 않습니다. 이 오류를 내 코드에서 우아하게 처리하고 싶습니다.
내 질문은 어떻게해야합니까?
위의 방법은 내가 잡을 수있는 예외를 던지지 않습니다. 그랬더라도 어쨌든 성가신 메시지 상자가 여전히 있습니다. 아마 유일한 방법은 파일 형식을 검증하는 것입니다. ~ 전에 열기. 그렇다면 Excel API의 또 다른 방법이 그러한 검증을 허용합니까?
해결책
죄송합니다. Excel 2007로 손상된 XLS 파일 예제를 시뮬레이션 할 수 없습니다.
통합 문서를 호출하기 전에 application.displayalerts = false를 시도해
통합 문서를 열 수 없으면 반환 된 값은 null이됩니다.
(IE 통합 문서 wkb = workbooks.open (....); wkb는 displayAlerts = false 및 파일을 추정 할 수 없을 때 무효가됩니다)
이것은 순전히 Excel 객체 모델에 대한 이해를 기반으로합니다.
제휴하지 않습니다 StackOverflow