C# Excel写入

时间:2023-03-09 16:21:15
C# Excel写入

基本思路,就是using Microsoft.Office.Interop.Excel;然后启动excel来处理

创建excel文件,代码如下:

            if (File.Exists(path))
            {
                return true;
            }
            try
            {
                //EXCEL应用程序
                Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
                Object nothing = Missing.Value;
                //EXCEL文档
                Microsoft.Office.Interop.Excel._Workbook excelDoc = excelApp.Workbooks.Add(nothing);
                Object format = Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault;

                excelDoc.SaveAs(path, nothing, nothing, nothing, nothing, nothing,
                    Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, nothing, nothing, nothing, nothing, nothing);
                excelDoc.Close(nothing, nothing, nothing);
                excelApp.Quit();
                return true;
            }
            catch
            {
                return false;
            }

将DataTable写入EXCLE,代码如下:

, AppDomain.CurrentDomain.BaseDirectory.LastIndexOf("\\"))
                + "\\" + excelname;

            if (!CreateExcel(path))
            {
                return false;
            }

            Microsoft.Office.Interop.Excel.Application app =
                new Microsoft.Office.Interop.Excel.Application();
            try
            {
                app.Visible = false;
                Workbook wBook = app.Workbooks.Add(true);
                Worksheet wSheet = wBook.Worksheets[] as Worksheet;
                )
                {
                    ;
                    row = excelTable.Rows.Count;
                    int col = excelTable.Columns.Count;
                    ; i < row; i++)
                    {
                        ; j < col; j++)
                        {
                            string str = excelTable.Rows[i][j].ToString();
                            wSheet.Cells[i + , j + ] = str;
                        }
                    }
                }

                //设置禁止弹出保存和覆盖的询问提示框
                app.DisplayAlerts = false;
                app.AlertBeforeOverwriting = false;
                wBook.Saved = true;
                //保存工作簿
                wBook.Save();
                //保存excel文件
                app.Save(path);
                app.SaveWorkspace(path);
                app.Quit();
                app = null;return true;
            }
            catch (Exception err)
            {return false;
            }