解决方案 »

  1.   

    http://www.cnblogs.com/atao/category/209358.html
      

  2.   

    百度 Google 大把大把的例子
      

  3.   

    http://wenku.baidu.com/link?url=HfuMvK56htHm57ajSBECrrHdzg1QiPJuom2D-xvYarU1NRDJZLSwNJ195roMlGmNzRvsdsLhE1AA0xfYpPmC4JTt7DVtW-H02C4lFDFunUC
      

  4.   

    刚刚看了下,貌似没看见读取Excel的。读取该怎么写?
      

  5.   

    //==========读============
    using (FileStream fsxls = File.OpenRead(@"C:....xls"))
                {
                    //从本地资源中获取文件流 到 内存中工作簿
                    IWorkbook wk = new HSSFWorkbook(fsxls);
                    //遍历该工作簿中所有表
                    for (int i = 0; i < wk.NumberOfSheets; i++)
                    {
                        Console.WriteLine("==========================================");
                        //内存中创建一张临时表用来存储 内存中的工作簿中的每张表的数据
                        ISheet sheet = wk.GetSheetAt(i);
                        //遍历临时表中的所有行
                        for (int j = 0; j < sheet.LastRowNum; j++)
                        {
                            //内存中创建临时的一行用来存储 临时表中的每行的数据
                            IRow row = sheet.GetRow(j);
                            //遍历改行的所有单元
                            for (int k = 0; k <row.LastCellNum; k++)
                            {
                                //内存中创建临时的一个单元 来存储 临时行中的所有数据
                                ICell cell = row.GetCell(k);
                                Console.Write(cell.ToString());
                            }
                            Console.WriteLine();                    }
                                        }
                }//===============写=================
    //内存中建一个空的工作簿
                IWorkbook wk = new HSSFWorkbook();
                //在工作簿下创建一张表
                ISheet sheet= wk.CreateSheet("mySheet1");
                //在表下创建50行
                for (int i = 0; i < 50; i++)
                {
                    //创建一行
                    IRow row = sheet.CreateRow(i);
                    //设置一个单元
                    for (int j = 0; j < 50; j++)
                    {
                        ICell cell = row.CreateCell(j);
                        cell.SetCellValue(j);
                    }
                    
                }
                using (FileStream fw=File.OpenWrite(@"C:...xls"))
                {
                    wk.Write(fw);
                    MessageBox.Show("0k");
                }
      

  6.   

    http://www.cnblogs.com/zhangzt/archive/2009/12/15/1624803.html
      

  7.   

    http://blog.csdn.net/rui_china/article/details/10405069
      

  8.   


    先学好VBA吧。然后学会让Excel自动录制宏。你可以在Excel-Home论坛注册一个账号,下载几十个用Excel作的管理信息系统,看看人家用VBA怎么编程的。高级语言的差别,不应该成为什么障碍。如果你计较于编程语言不同,说明你根本没想着去了解Excel系统本身对象结构和COM接口体系。
      

  9.   

    随便搜下Google会有很多例子的,试试下面这篇,上面有demo和代码http://www.e-iceblue.com/Knowledgebase/Spire.XLS/Demos/Pagesetup/Set-Cell-Fill-in-Excel-for-C-/VB.NET.html
      

  10.   

    自动用递增变化的数据填充Excel
      private void tsbtn_Query_Click(object sender, EventArgs e)
            {
                CloseProcess("EXCEL");//关闭所有Excel进程
                string P_str_Excel = tstxt_Excel.Text;//记录Excel文件路径
                string P_str_SheetName = tscbox_Sheet.Text;//记录选择的工作表名称
                object P_obj_Start = tstxt_Start.Text;//记录开始单元格
                object P_obj_End = tstxt_End.Text;//记录结束单元格
                object missing = System.Reflection.Missing.Value;//定义object缺省值
                Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();//实例化Excel对象
                //打开Excel文件
                Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(P_str_Excel, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
                Microsoft.Office.Interop.Excel.Worksheet worksheet;//声明工作表
                worksheet = ((Microsoft.Office.Interop.Excel.Worksheet)workbook.Worksheets[P_str_SheetName]);//获取选择的工作表
                Microsoft.Office.Interop.Excel.Range searchRange = worksheet.get_Range(P_obj_Start, missing);//定义查找范围
                switch (tscbox_Type.Text)//按照下拉列表中的文本进行条件判断
                {
                    case "数字"://以数字序列填充
                        searchRange.AutoFill(worksheet.get_Range(P_obj_Start, P_obj_End), Microsoft.Office.Interop.Excel.XlAutoFillType.xlFillSeries);
                        break;
                    case "工作日"://以工作日填充
                        searchRange.AutoFill(worksheet.get_Range(P_obj_Start, P_obj_End), Microsoft.Office.Interop.Excel.XlAutoFillType.xlFillWeekdays);
                        break;
                    case "月份"://以月份填充
                        searchRange.AutoFill(worksheet.get_Range(P_obj_Start, P_obj_End), Microsoft.Office.Interop.Excel.XlAutoFillType.xlFillMonths);
                        break;
                    case "年份"://以年份填充
                        searchRange.AutoFill(worksheet.get_Range(P_obj_Start, P_obj_End), Microsoft.Office.Interop.Excel.XlAutoFillType.xlFillYears);
                        break;
                    default://以默认方式填充
                        searchRange.AutoFill(worksheet.get_Range(P_obj_Start, P_obj_End), Microsoft.Office.Interop.Excel.XlAutoFillType.xlFillDefault);
                        break;
                }
                excel.DisplayAlerts = false;//设置保存Excel时不显示对话框
                workbook.Save();//保存工作簿
                workbook.Close(false, missing, missing);//关闭工作簿
                CloseProcess("EXCEL");//关闭所有Excel进程
                WBrowser_Excel.Navigate(P_str_Excel);//在窗体中重新显示Excel文件内容
            }