保存ダイアログを使用して、DataGridView を Excel ドキュメントにエクスポートしたいと考えています。誰でも助けることができますか?(注: Excel ドキュメントのグリッドに存在する列名が必要です)
質問する
6703 次
1 に答える
8
EPPlus
サーバーにオフィスライセンスが必要ないものをお勧めします。
private void btnExportToExcel_Click(object sender, EventArgs e)
{
var dia = new System.Windows.Forms.SaveFileDialog();
dia.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
dia.Filter = "Excel Worksheets (*.xlsx)|*.xlsx|xls file (*.xls)|*.xls|All files (*.*)|*.*";
if(dia.ShowDialog(this) == System.Windows.Forms.DialogResult.OK)
{
DataTable data = null;// use the DataSource of the DataGridView here
var excel = new OfficeOpenXml.ExcelPackage();
var ws = excel.Workbook.Worksheets.Add("worksheet-name");
// you can also use LoadFromCollection with an `IEnumerable<SomeType>`
ws.Cells["A1"].LoadFromDataTable(data, true, OfficeOpenXml.Table.TableStyles.Light1);
ws.Cells[ws.Dimension.Address.ToString()].AutoFitColumns();
using(var file = File.Create(dia.FileName))
excel.SaveAs(file);
}
}
于 2013-01-18T15:49:42.460 に答える