[转] C# 操作 Excel 如何设置格式

转载 2007年09月26日 18:07:00

① 怎样把DataGrid的数据导出到Excel以供打印?

  ② 之前已经为DataGrid设置了TableStyle,即自定义了列标题和要显示的列,如果想以自定义的视图导出数据该怎么办?

  ③ 把数据导出到Excel后,怎样为它设置边框啊?

  ④ 怎样使从DataGrid导出到Excel的某个列居中对齐?

  ⑤ 数据从DataGrid导出到Excel后,怎样使标题行在打印时出现在每一页?

  ⑥ DataGrid数据导出到Excel后打印时每一页显示’当前页/共几页’,怎样实现?

  ①

  private void button1_Click(object sender, System.EventArgs e)

  {

  int row_index, col_index; 

  

  row_index = 1; 

  col_index = 1; 

  

  Excel.ApplicationClass excel = new Excel.ApplicationClass(); 

  excel.Workbooks.Add(true); 

  

  DataTable dt = ds.Tables["table"]; 

  

  foreach(DataColumn dcHeader in dt.Columns)

  excel.Cells[row_index, col_index++] = dcHeader.ColumnName; 

  

  foreach(DataRow dr in dt.Rows)

  {

  col_index = 0; 

  foreach(DataColumn dc in dt.Columns)

  {

  excel.Cells[row_index+1, col_index+1] = dr[dc]; 

  col_index++; 

  }

  row_index++; 

  }

  excel.Visible = true; 

  

  }

  

  private void Form1_Load(object sender, System.EventArgs e)

  {

  SqlConnection conn = new SqlConnection("server=tao; uid=sa; pwd=; database=pubs"); 

  conn.Open(); 

  

  SqlDataAdapter da = new SqlDataAdapter("select * from authors", conn); 

  ds = new DataSet(); 

  da.Fill(ds, "table"); 

  

  dataGrid1.DataSource = ds; 

  dataGrid1.DataMember = "table"; 

  }

  ②dataGrid1.TableStyles[0].GridColumnStyles[index].HeaderText; //index可以从0~dataGrid1.TableStyles[0].GridColumnStyles.Count遍历。

  ③ Excel.Range range; 

  range=worksheet.get_Range(worksheet.Cells[1,1],xSt.Cells[ds.Tables[0].Rows.Count+1,ds.Tables[0].Columns.Count]); 

  

  range.BorderAround(Excel.XlLineStyle.xlContinuous,Excel.XlBorderWeight.xlThin,Excel.XlColorIndex.xlColorIndexAutomatic,null); 

  

  range.Borders[Excel.XlBordersIndex.xlInsideHorizontal].ColorIndex = Excel.XlColorIndex.xlColorIndexAutomatic; 

  range.Borders[Excel.XlBordersIndex.xlInsideHorizontal].LineStyle =Excel.XlLineStyle.xlContinuous; 

  range.Borders[Excel.XlBordersIndex.xlInsideHorizontal].Weight =Excel.XlBorderWeight.xlThin; 

  

  range.Borders[Excel.XlBordersIndex.xlInsideVertical].ColorIndex =Excel.XlColorIndex.xlColorIndexAutomatic; 

  range.Borders[Excel.XlBordersIndex.xlInsideVertical].LineStyle = Excel.XlLineStyle.xlContinuous; 

  range.Borders[Excel.XlBordersIndex.xlInsideVertical].Weight = Excel.XlBorderWeight.xlThin; 

  ④ range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter

  ⑤ worksheet.PageSetup.PrintTitleRows = "$1:$1"; 

  ⑥ worksheet.PageSetup.CenterFooter = "第&P页 / 共&N页"; 

  22.当把DataGrid的Cell内容赋值到Excel的过程中想在DataGrid的CaptionText上显示进度,但不显示。WHY?

  ...

  dataGrid1.CaptionText = "正在导出:" + (row + 1) + "/" + row_cnt; 

  System.Windows.Forms.Application.DoEvents(); 

  ...

 

相关文章推荐

C# 操作 Excel 如何设置格式

  • 2009年06月13日 21:28
  • 31KB
  • 下载

C#中操作Excel(4)—— 向Excel中插入两种图表以及设置图表格式

引言         本文主要讨论下向Excel中插入图表的两种方式。在Excel中图表是有两种级别的,一种是和sheet同级别的图表,也就是说整个excel的标签页就是一个图表;还有一种就是我们最...

C#操作Excel单元格格式

  • 2012年09月06日 22:03
  • 14KB
  • 下载

C# 操作Excel单元格格式

  • 2009年08月18日 14:36
  • 50KB
  • 下载

C# 操作Excel,控制格式

公元19XX年前,关于EXCEL的操作就如滔滔江水,连绵不绝,真正操作EXCEL我也是从去年下半年开始的,有些比较复杂的年度报表之类的,做起来也有点费力,不过还是都能画出来了,关于EXCEL的报表导出...

C#操作Excel时的格式设定--》报表

2009-09-06 09:00 Excel报表打印的格式设定 1.     表头的设置 Excel._Worksheet myWorksheet;    myWorksheet.PageSetup....

C#中npoi操作Excel[版本2.0.1读写2003、2007格式]

下载npoi2.0.1dll文件:http://download.csdn.net/detail/pukuimin1226/5851747        public static ...

C#中npoi操作Excel[版本2.0.1读写2003、2007格式]

C#中npoi操作Excel[版本2.0.1读写2003、2007格式]        public static void test1()        {            NpoiHel...

C#对word、excel、pdf等格式文件的操作总结

一、word 这是我以前工作时写过的一个业务逻辑处理类,里面有不少文件操作的方法,这里主要关注一下C#对word的操作。里面的方法可以直接拿出来用,主要是通过word的dot模版来进行创建wor...

C#中npoi操作Excel[版本2.0.1读写2003、2007格式

public static void test1()        {            NpoiHelper np = new NpoiHelper();         ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[转] C# 操作 Excel 如何设置格式
举报原因:
原因补充:

(最多只允许输入30个字)