Excel 범위에 배열 쓰기
이 문제에서는 사용자가 Excel 범위에 개체 배열을 쓰려고 할 때 문제가 발생합니다. 코드가 거의 실행되지만 각 셀은 배열의 첫 번째 항목 값으로 채워집니다.
조사 결과 사용자는 역과정(워크시트의 값을 배열로 읽어오는 과정)이 제대로 작동하는 것으로 확인했습니다. 그러나 어떤 이유로 해당 영역에 쓰기가 다르게 동작합니다.
이 문제를 해결하기 위해 숙련된 사용자가 DataTable을 배열로 변환한 다음 해당 배열을 워크시트의 범위에 쓰는 방법을 제안했습니다. 사용자는 맨 위 행 변수를 수정하여 원하는 배열 시작 행을 지정할 수 있습니다.
제공된 코드는 다음과 같습니다.
<code class="language-c#">object[,] arr = new object[dt.Rows.Count, dt.Columns.Count]; for (int r = 0; r < dt.Rows.Count; r++) { for (int c = 0; c < dt.Columns.Count; c++) { arr[r, c] = dt.Rows[r][c]; } } worksheet.get_Range("A" + topRow, "Z" + (topRow + dt.Rows.Count -1)).Value2 = arr;</code>
이 방법을 사용하면 셀별로 반복적으로 작성할 필요 없이 대규모 배열을 Excel에 효율적으로 작성할 수 있습니다.
위 내용은 Excel 범위에 개체 배열을 효율적으로 쓰는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!