2014-04-09 2 views
2

배열 나는이 예외가 점점 오전 : Exception from HRESULT: 0x800A03EC예외 워크 시트

그것은 라인에 발생을 sheet.Move(After: wb.Worksheets.Count);

List<String> spreadsheets = new List<String>(); 
//spreadsheets is filled with names 

while (spreadsheets.Count > i) 
{ 
    Excel.Worksheet sheet = wb.Worksheets.Add(); 
    sheet.Name = spreadsheets[i]; 
    sheet.Move(After: wb.Worksheets.Count); 
    i++; 
} 

확신이 오류 뒤에 추론이 그래서 어떤 도움을 크게 감사하지!

내가하는 일을 알고 있다면 도움이 될 것입니다 ... 기본적으로 새 워크 시트를 만들고 이름을 지정하고 다른 워크 시트의 끝으로 이동하십시오. MSDN 가입일

+1

확인 i'가'0'에서 시작'경우, 엑셀 인덱스'1'에서 시작 다양합니다. 그냥 한번 쳐보고 보아라. – Habib

+0

'spreadsheets'은 내가 시트의 이름으로 만든 문자열의 배열입니다. – Adjit

+0

@Habib 처음에'i'는'0'과 같고, 물건이리스트에 추가되면 증가합니다. 나는 Excel과 관련하여'i'를 절대 사용하지 않습니다. 나는 엑셀이 0이 아닌 기반이기 때문에이 오류가 발생하는 경향이 있다는 것을 읽었습니다. – Adjit

답변

2

:

타입

후 다음으로 System.Object

이동 된 시트 배치 될 그 후 시트. Before를 지정하면 After를 지정할 수 없습니다.

워크 시트를 찾을 때 정수를 전달합니다. 이 같은

뭔가가 작동하지 않을 수 있습니다 :

sheet.Move(After: wb.Worksheets[wb.Worksheets.Count]); 
+0

오늘이 모든 것이 끝났습니다! 대단 하네! 감사. 나는 너를 위해 올라 오는 또 다른 질문이있어. :) – Adjit