有效率地將資料表寫入Excel而不覆蓋
將資料從陣列傳輸到 Excel 範圍通常會帶來挑戰,特別是用陣列的第一個元素覆蓋儲存格的風險。 以下方法示範如何有效地將 DataTable 寫入 Excel 範圍,從而避免這種常見的陷阱。
此範例將 DataTable 轉換為二維數組,然後將其寫入工作表:
<code class="language-csharp">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]; } } range.Value2 = arr;</code>
這裡,arr
陣列是從 dt
資料表中逐個單元填入的。 range
物件指定 Excel 工作表中的目標範圍。 Value2
屬性可在單一操作中有效地將陣列的內容傳送到指定範圍。
雖然此方法有效地解決了單元格覆蓋問題,但重要的是要認識到,就性能而言,將初始數據轉換為數組可能並不總是最佳解決方案,尤其是對於非常大的數據表。 根據具體上下文和資料大小,可能存在替代的、可能更有效的方法。
以上是如何在不覆蓋儲存格的情況下有效率地將 DataTable 陣列寫入 Excel 範圍?的詳細內容。更多資訊請關注PHP中文網其他相關文章!