C# 导出excel

 
// 组织数据
public void addData()
        {
            // 每一个list代表excel中一行
            IList<String> list1 = new List<String>();
            list1.Add("第一层参数");
            IList<String> list2 = new List<String>();
            list2.Add("土体厚度");
            list2.Add(txtSoilThickness1.Text);
            list2.Add("井筒厚度");
            list2.Add(txtPitShaftThickness1.Text);
            list2.Add("土体侧压力参数");
            list2.Add(txtSoilSide1.Text);
            list2.Add("土体予许强度");
            list2.Add(txtSoilStrength1.Text);
            list2.Add("予许最大塑性范围");
            list2.Add(txtSoilRange1.Text);
          
            IList<object> item = new List<object>();
            item.Add(list1);
            item.Add(list2);
            this.ReportToExcel(item, "excel名称");

        }

 public void ReportToExcel(IList<object> list, string ReportTitleName)
        {
            string path;
            SaveFileDialog sfd = new SaveFileDialog();
            sfd.Filter = "导出Excel(*.xls)|*.xls";
            sfd.FileName = ReportTitleName;

            if (sfd.ShowDialog() == DialogResult.OK)
            {
                path = sfd.FileName;
                Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook();
                Aspose.Cells.Worksheet ws = wb.Worksheets[0];
                Cells cell = ws.Cells;
                string[,] _ReportDt = new string[5, 5];

                // 合并第一行单元格
                //Aspose.Cells.Range range = cell.CreateRange(0,0,1,5);
                //range.Merge();
                //cell["A1"].PutValue(ReportTitleName);

                //// 设置行高
                //cell.SetRowHeight(0,20);

                // 设置字体样式
                //Aspose.Cells.Style style1 = wb.Styles[wb.Styles.Add()];
                //style1.HorizontalAlignment = TextAlignmentType.Center; // 文字居中
                //style1.Font.Name = "宋体";
                //style1.Font.IsBold = true; // 设置粗体
                //style1.Font.Size = 12; // 设置字体大小
                // 给单元格并联样式
                //cell["A1"].SetStyle(style1);    // 报表名字 样式

                for (int i = 0; i < list.Count; i++)
                {
                    IList<String> item = (List<String>)list[i];
                    for (int j = 0; j < item.Count; j++)
                    {
                        cell[i, j].PutValue(item[j]);
                    }

                }
                wb.Save(path);

            }
        }

 注:需要引入Aspose.dll文件

猜你喜欢

转载自llyilo.iteye.com/blog/2270333