2011-12-23 4 views
0

C# 코드에서 Excel 파일을 열려고합니다.VBA 코드가있는 Excel 통합 문서 열기 - VSTO에 알리는 오류

workBook = workBooks.Open(fileName,    //filename 
          0,      //updatelinks 
          true,     //readonly 
          5,      //format 
          "",      //password 
          "",      //WriteResPassword 
          true,     //IgnoreReadOnlyRecommended 
          XlPlatform.xlWindows, //Origin 
          "\t",     //Delimiter 
          false,     //Editable 
          false,     //Notify 
          0,      //Converter 
          true,     //AddToMru 
          1,      //Local 
          0);      //CorruptLoad 

나는 엑셀이 그 안에 약간의 오류가있는 경우 코드가 에서 workBooks.Open을 중단 것을 알 수있다. 저는 display 속성을 true로 유지했습니다. 즉, Excel에 오류가 있음을 발견했을 때입니다. 추가 조사에서 오류가 Excel에서 일부 vba 코드로 인해 발생했음을 알게되었습니다. 내 요구 사항은 C# 코드에서이 사실을 통보 받으면서 파일 내의 오류를 무시하거나 파일 자체를 무시할 수 있도록하는 방법입니다.

+0

초보자를 위해서, 아마도 각 인자가 무엇인지를 설명하기 위해''comments'' 인라인을 사용하고 있을까요? 물론 당신의 잘못이 아니지만, 우, 그 서명은 ........ – Yuck

+0

.Net4에서 명명 된 매개 변수를 사용하면 더 좋은 방법으로 매개 변수를 전달할 수 있습니다. interop은 정말 못생긴 것입니다. (어쨌든,이 예외를 던지지 않습니까? ? –

+0

@Saeed, Thanks .. 인터럽트는 실제로 아주 못생긴다. 나는 그걸로 많은 어려움을 겪고있다. 아무런 예외도 발생시키지 않는다. 그냥 멈춘다. !!! 4.0에서 이것을하는 법을 알고 있는가? 내부적으로 Interop을 사용하지만 깨끗하게 관리 할 수 ​​있다면 행복 할 것입니다 !!! – Nishant

답변

1

무엇을하려고합니까? 아마도 Microsoft Open XML SDK를 사용하는 것으로 충분할 수 있습니까?
Excel 파일을 읽고 작성하고 편집 할 수 있습니다.

+0

Excel 파일에서 명명 된 범위를 모두 가져 오려고합니다. Open XML을 사용할 수 있습니까? – Nishant

+0

http://msdn.microsoft.com/en-us/library/gg294173.aspx – Remy

관련 문제