如何将c# winForm的datagridview控件中的数据导入到Excel中

怎么将c# winForm的datagridview控件中的数据导入到Excel中?
本帖最后由 hdgqlyl 于 2012-05-31 00:05:12 编辑
如标题所示
怎么将c# winForm的datagridview控件中的数据导入到Excel中?
我用的是SQL Server数据库。
我是个菜鸟,请给我说的详细点,谢谢各位了。
------解决方案--------------------
用ODBC或者OleDb,把Excel当做一个数据库,创建表相当于创建sheet,然后用sql语句Insert把datagridview的数据写入到Excel中,
------解决方案--------------------
public static bool SaveDataTableToExcel(System.Data.DataTable excelTable, string filePath)  
        {  
            Microsoft.Office.Interop.Excel.Application app =  
                new Microsoft.Office.Interop.Excel.ApplicationClass();  
            try  
            {  
                app.Visible = false;  
                Workbook wBook = app.Workbooks.Add(true);  
                Worksheet wSheet = wBook.Worksheets[1] as Worksheet;  
                if (excelTable.Rows.Count > 0)  
                {  
                   int row = 0;  
                    row = excelTable.Rows.Count;  
                    int col = excelTable.Columns.Count;  
                    for (int i = 0; i < row; i++)  
                    {  
                        for (int j = 0; j < col; j++)  
                        {  
                           string str = excelTable.Rows[i][j].ToString();  
                            wSheet.Cells[i + 2, j + 1] = str;  
                        }  
                    }  
                }  
  
                int size = excelTable.Columns.Count;  
                for (int i = 0; i < size; i++)  
                {  
                    wSheet.Cells[1, 1 + i] = excelTable.Columns[i].ColumnName;  
                }  
                //设置禁止弹出保存和覆盖的询问提示框    
                app.DisplayAlerts = false;  
                app.AlertBeforeOverwriting = false;  
                //保存工作簿    
                wBook.Save();  
                //保存excel文件    
                app.Save(filePath);  
                app.SaveWorkspace(filePath);  
                app.Quit();