DataGridView导出Excel 隐藏列不显示
来源:互联网 发布:mac mini 音频输出 编辑:程序博客网 时间:2024/05/01 09:16
//导出Excel
private void btnExc_Click(object sender, EventArgs e)
{
string filename = "成绩查询数据--" + DateTime.Now.ToString("yyMMddhhmmss");
string saveFileName = "";
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.DefaultExt = "xls";
saveDialog.Filter = "Excel文件|*.xls";
saveDialog.FileName = filename;
saveDialog.ShowDialog();
saveFileName = saveDialog.FileName;
if (saveFileName.IndexOf(":") < 0) return; //被点了取消
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
if (xlApp == null)
{
MessageBox.Show("无法创建Excel对象,可能你的机器上没有安装Excel!");
return;
}
Microsoft.Office.Interop.Excel.Workbooks workbooks = xlApp.Workbooks;
Microsoft.Office.Interop.Excel.Workbook workbook = workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);
Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[1];//取得sheet1
int colIndex = 0;
//写入标题
for (int i = 0; i < dgvScore.ColumnCount; i++)
{
if (dgvScore.Columns[i].Visible)
{
colIndex++;
worksheet.Cells[1, colIndex] = dgvScore.Columns[i].HeaderText;
}
}
//写入数据
for (int r = 0; r < dgvScore.Rows.Count; r++)
{
colIndex = 0;
for (int i = 0; i < dgvScore.ColumnCount; i++)
{
if (dgvScore.Columns[i].Visible)
{
colIndex++;
worksheet.Cells[r + 2, colIndex] = dgvScore.Rows[r].Cells[i].Value;
}
}
System.Windows.Forms.Application.DoEvents();
}
worksheet.Columns.EntireColumn.AutoFit();//列宽自适应
if (saveFileName != "")
{
try
{
workbook.Saved = true;
workbook.SaveCopyAs(saveFileName);
}
catch (Exception ex)
{
MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + ex.Message);
return;
}
}
xlApp.Quit();
GC.Collect();//强行销毁
MessageBox.Show(filename + "文件导出成功", "提示", MessageBoxButtons.OK);
}
- DataGridView导出Excel 隐藏列不显示
- datagridview不显示空值&&只导出显示出的数据(去掉隐藏列)
- 显示、隐藏DataGridView的列
- DataGridView 不显示列中的某一列
- DataGridView按列顺序导出Excel
- datagridview隐藏不需要显示的列
- excel隐藏列显示列操作
- telerik:RadGrid导出Excel隐藏列
- C# DataGridView导出Excel,设置单元格合并,隐藏行
- DataGridview第一列隐藏
- 导出到EXCEL(列不固定)
- PHP导出Excel文件时导出列的数字长度太长时显示不完整或者乱码显示
- DataGridView导出excel
- datagridview导出为Excel
- DataGridView导出excel(转载)
- DataGridView导出到Excel
- DataGridView导出到Excel
- c# datagridview 导出excel
- ImageView组件的应用:图片浏览器
- 关于有向图的强连通分量
- 取消事件的发生
- iptables命令详解(链接)
- Add Binary
- DataGridView导出Excel 隐藏列不显示
- 字符串分割(C++)
- linux下各种操作的权限要求。
- Valid Number
- vi/vim 删除:一行, 一个字符, 单词, 每行第一个字符 命令
- _itoa in the g++
- 加载驱动模块时Device or resource busy的解决方法
- PHP,Mysql-根据一个给定经纬度的点,进行附近地点查询–合理利用算法
- 线性表1.1