winform操作excel表格的简单应用

要求做一个excel文本的log。也是刚刚接触,在网上查了一些资料,记录下:

 

                string str1 = System.Environment.CurrentDirectory;//获得当前程序所在文件夹
                string str2 = "Log.xlsx";
                string fileName = str1 + "\\" + str2;
                Microsoft.Office.Interop.Excel.Application xlApp = null;
                Microsoft.Office.Interop.Excel.Workbook workbook = null;
                Microsoft.Office.Interop.Excel.Sheets sheets = null;
                Microsoft.Office.Interop.Excel.Worksheet worksheet = null;
                Microsoft.Office.Interop.Excel.Range range= null;
                try
                {
                    xlApp = new Microsoft.Office.Interop.Excel.Application();//excel实例
                    if (xlApp == null)
                    {
                        MessageBox.Show("无法创建excel对象,可能系统没有安装excel");
                        return;
                    }

                    workbook = xlApp.Workbooks.Add(true);//workbook
                    if (!File.Exists(fileName))//判断文件是否存在
                    {
                        sheets = workbook.Worksheets;//实例表格
                        worksheet = (Microsoft.Office.Interop.Excel.Worksheet)sheets[1];//第一个表格
                        workbook.SaveAs(fileName, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,                            Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
                             Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
                    }
                    workbook = xlApp.Workbooks.Open(fileName,
                        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                        Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                        Type.Missing, Type.Missing);//打开Excel
                    worksheet = (Microsoft.Office.Interop.Excel.Worksheet)xlApp.Worksheets.get_Item(1);

                    int n = worksheet.UsedRange.Rows.Count;//获取使用过的行数
                    if (n == 1)//excel为空的时候
                    {  
                        //设置标题
                       
                        worksheet.Cells[1, 1] = "XX";
                        worksheet.Cells[1, 2] = "XXX";
                        worksheet.Cells[1, 3] = "XXXXX";
                       
                        
                        //设置值log
                        
                        worksheet.Cells[n + 1, 1] = "1A";
                        worksheet.Cells[n + 1, 2] ="1B";
                        worksheet.Cells[n + 1, 3] = "1C";
                        worksheet.Cells[n + 1, 4] = "1D";
                       
                    }
                    else
                    {
                        worksheet.Cells[n+1 , 1] = "A";
                        worksheet.Cells[n +1, 2] ="B";
                        worksheet.Cells[n +1, 3] = "C";
                        worksheet.Cells[n +1, 4] = "D";
                       
                    }
                    workbook.Save();//保存
                    
                }
                catch (Exception exp)
                {
                    MessageBox.Show(exp.Message);
                    return;
                }
                finally
                {
                    workbook.Close(false, Type.Missing, Type.Missing);
                    xlApp.Quit();
                }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值