我想问是否有另一种方法可以从datagridview导出到excel。因为我是通过互操作完成的,而且对于大文件来说非常慢。现在我也想用互操作来做,但它应该更快地加载数据。
我使用的代码:
for (int i = 1; i < dataGridView1.Columns.Count + 1; i++)
{
xlWorkSheet1.Cells[1, i] = dataGridView1.Columns[i - 1].HeaderText;
}
for (int i = 0; i <= dataGridView1.RowCount - 1; i++)
{
for (int j = 0; j <= dataGridView1.ColumnCount - 1; j++)
{
DataGridViewCell cell = dataGridView1[j, i];
xlWorkSheet1.Cells[i + 2, j + 1] = cell.Value;
}
}
现在我想导出的不是单元格,而是行。有的东西object[,] values1
我从excel导出到数据表的代码:
object[,] values1 = (object[,])xlWorksheet1.UsedRange.Value2; // excelTb1
for (int k = 0; k < values1.GetLength(1); )
{
excelTb1.Columns.Add((string)values1[1, ++k]);
}
object[] singleDValue = new object[values1.GetLength(1)];
for (int i = 1; i < values1.GetLength(0); i++)
{
for (int k = 0; k < values1.GetLength(1); )
{
singleDValue[k] = values1[i + 1, ++k];
}
excelTb1.LoadDataRow(singleDValue, System.Data.LoadOption.PreserveChanges);
}
有人可以告诉我如何从 datagridview 到 excel 吗?