• DataGridView 导出 Excel


    用来记录一下。老是忘记,这个是比较稳定的方法:)

    private void SaveExcel(DataGridView dataGridView1,string filename)
    {
    if (dataGridView1.Rows.Count == 0)
    return;

    Microsoft.Office.Interop.Excel.ApplicationClass _x
    =
          new Microsoft.Office.Interop.Excel.ApplicationClass();
    _x.UserControl
    = false;
    Microsoft.Office.Interop.Excel.WorkbookClass wb
    =
          (Microsoft.Office.Interop.Excel.WorkbookClass)this._x.Workbooks.Add(System.Reflection.Missing.Value);
    //生成表头
    for (int i = 0; i < dataGridView1.ColumnCount; i++)
    {
    _x.Cells[
    1, i + 1] = dataGridView1.Columns[i].HeaderText;
    }

    //填充数据
    for (int i = 0; i < dataGridView1.RowCount - 1; i++)
    {
    for (int j = 0; j < dataGridView1.ColumnCount; j++)
    {
    if (dataGridView1[j, i].ValueType == typeof(string))
    {
    _x.Cells[i
    + 2, j + 1] = "'" + dataGridView1[j, i].Value.ToString();
    }
    else
    {
    _x.Cells[i
    + 2, j + 1] = dataGridView1[j, i].Value.ToString();
    }
    }
    }

    wb.Saved
    = true;
    this._x.ActiveWorkbook.SaveCopyAs(filename);
    this._x.Quit();
    System.Runtime.InteropServices.Marshal.ReleaseComObject((
    object)_x);
    System.GC.Collect();
    }
  • 相关阅读:
    Oozie — What Why and How
    git 用户手册
    整理笔记 C语言
    第一次理解通用链表
    C++ 通用队列类
    懂了这些,你才真正懂了C
    简单键盘驱动
    简述进程间通信方式
    几何原本
    GSP几何画板简介
  • 原文地址:https://www.cnblogs.com/stangray/p/1706042.html
Copyright © 2020-2023  润新知