// 组织数据 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文件