如何将SQL Sever 表中的数据导入到 EXCEL 表中(请各位高手帮忙,急用) http://www.csdn.net/Develop/Read_Article.asp?Id=16482 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.csdn.net/develop/Read_Article.asp?Id=26427http://www.csdn.net/develop/Read_Article.asp?Id=22183 private void button1_Click(object sender, System.EventArgs e){ Excel.Application excel= new Excel.Application(); int rowIndex=1; int colIndex=0; excel.Application.Workbooks.Add(true); DataTable table=DataSet.tables[0];数据源 //将所得到的表的列名,赋值给单元格 foreach(DataColumn col in table.Columns) { colIndex++; excel.Cells[1,colIndex]=col.ColumnName; } //同样方法处理数据 foreach(DataRow row in table.Rows) { rowIndex++; colIndex=0; foreach(DataColumn col in table.Columns) { colIndex++; excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString(); } } //不可见,即后台处理 excel.Visible=true; } Sql Server本身就有把数据导入到Excel中的功能,这个很简单,不多说了。如果要用代码实现,我想重点应该在于如何向Excel表中写数据的问题,我正好写了一个把数据引入到Excel中的程序,给你点代码参考:try { int colHead = 1; Excel.Application exc = new Excel.Application() ; Excel.Workbooks workbooks = exc.Workbooks; Excel._Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet); Excel.Sheets sheets = workbook.Worksheets; Excel._Worksheet worksheet = (Excel._Worksheet) sheets.get_Item(1); Excel.Range range = null; //输出表头 int col_index = Convert.ToInt32(Convert.ToChar("A"));//列号 string key = String.Empty;//行号字母 string cell = String.Empty;//表格号 foreach( DataGridColumnStyle style in grid.TableStyles[0].GridColumnStyles ) { key = Convert.ToChar( col_index ).ToString(); cell = key + colHead.ToString() ; range = worksheet.get_Range( cell , cell ); col_index++; range.Value = style.HeaderText; //range.ColumnWidth = style.Width; } //输出表数据 DataTable table = (DataTable)grid.DataSource ; colHead = 2; foreach( DataRow row in table.Rows ) { col_index = Convert.ToInt32(Convert.ToChar("A")); foreach( DataGridColumnStyle style in grid.TableStyles[0].GridColumnStyles ) { key = Convert.ToChar( col_index ).ToString(); cell = key + colHead.ToString() ; range = worksheet.get_Range( cell , cell ); if ( table.Columns.Contains( style.MappingName ) == true ) { range.Value = row[style.MappingName].ToString(); } col_index ++; } colHead++; } //合计行 exc.Visible = true; } catch( Exception Ex ) { ExceptionManager.DealWithException( Ex ); MessageBox.Show( "输出报表错误!","错误" , MessageBoxButtons.OK,MessageBoxIcon.Error ); } http://www.csdn.net/Develop/Read_Article.asp?Id=16482http://www.csdn.net/Develop/Read_Article.asp?Id=19115 请間盼星星: 你处理后的EXCEL表存放在什么地方的呀,名字是什么 会自动跳出来Excel窗口的,让用户自己选择存还是不存 xml 关闭程序时没有反应 串口校验数据? 请问一个更新Domain Service的问题 如何写个软件 来监管程序? 简单的问题,动态生成控件后对控件属性修改的疑问?? 怎么取消DataGridView默认选择单元格 C#清理正在使用的所有资源?? onKeyDown函数用来相应按键消息,就是说某个键一按下就执行响应函数,但是如果我想询问当前时刻键盘的某个键是否被按下,应该用什么办法 DevExpress GridControl添加数据问题 问个弱智的问题 关于多线程的超时终止代码(比较精确的),贴出来供参考。
http://www.csdn.net/develop/Read_Article.asp?Id=22183
{
Excel.Application excel= new Excel.Application();
int rowIndex=1;
int colIndex=0; excel.Application.Workbooks.Add(true);
DataTable table=DataSet.tables[0];数据源
//将所得到的表的列名,赋值给单元格
foreach(DataColumn col in table.Columns)
{
colIndex++;
excel.Cells[1,colIndex]=col.ColumnName;
} //同样方法处理数据
foreach(DataRow row in table.Rows)
{
rowIndex++;
colIndex=0;
foreach(DataColumn col in table.Columns)
{
colIndex++;
excel.Cells[rowIndex,colIndex]=row[col.ColumnName].ToString();
}
}
//不可见,即后台处理
excel.Visible=true;
}
如果要用代码实现,我想重点应该在于如何向Excel表中写数据的问题,我正好写了一个把数据引入到Excel中的程序,给你点代码参考:
try
{
int colHead = 1; Excel.Application exc = new Excel.Application() ;
Excel.Workbooks workbooks = exc.Workbooks;
Excel._Workbook workbook = workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Sheets sheets = workbook.Worksheets; Excel._Worksheet worksheet = (Excel._Worksheet) sheets.get_Item(1);
Excel.Range range = null; //输出表头
int col_index = Convert.ToInt32(Convert.ToChar("A"));//列号
string key = String.Empty;//行号字母
string cell = String.Empty;//表格号
foreach( DataGridColumnStyle style in grid.TableStyles[0].GridColumnStyles )
{
key = Convert.ToChar( col_index ).ToString();
cell = key + colHead.ToString() ;
range = worksheet.get_Range( cell , cell );
col_index++;
range.Value = style.HeaderText;
//range.ColumnWidth = style.Width;
}
//输出表数据
DataTable table = (DataTable)grid.DataSource ;
colHead = 2;
foreach( DataRow row in table.Rows )
{
col_index = Convert.ToInt32(Convert.ToChar("A"));
foreach( DataGridColumnStyle style in grid.TableStyles[0].GridColumnStyles )
{
key = Convert.ToChar( col_index ).ToString();
cell = key + colHead.ToString() ;
range = worksheet.get_Range( cell , cell );
if ( table.Columns.Contains( style.MappingName ) == true )
{
range.Value = row[style.MappingName].ToString();
}
col_index ++;
}
colHead++;
}
//合计行
exc.Visible = true;
}
catch( Exception Ex )
{
ExceptionManager.DealWithException( Ex );
MessageBox.Show( "输出报表错误!","错误" , MessageBoxButtons.OK,MessageBoxIcon.Error );
}
http://www.csdn.net/Develop/Read_Article.asp?Id=19115