在WINFORM(C#)如何将数据库中的表中的数据导出,生成EXCEL文件 只通过一个BOTTON按纽就从数据库总导出数据,生成EXCEL文件,怎么弄,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如何在 Microsoft Visual C# .NET 中实现 Microsoft Excel 自动化http://support.microsoft.com/?scid=kb%3Bzh-cn%3B302084&x=14&y=14 给你一个例子参考下。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Text;using System.Windows.Forms;using Excel;namespace ExcelReport{ public partial class FormExcelNormal : Form { public FormExcelNormal() { InitializeComponent(); } private void FormExcelNormal_Load(object sender, EventArgs e) { DataSet objDataSet = FormUtil.FormGridView("MEMBERINFO"); dgvMemberInfo.DataSource = objDataSet.Tables["MEMBERINFO"]; } // Excel导出 private void btnExcelOut_Click(object sender, EventArgs e) { string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"]; SqlConnection objConnection = new SqlConnection(strConnect); SqlCommand objCommand = new SqlCommand("SELECT MEMBERNAME, SEX, AREA, EMAIL FROM MEMBERINFO", objConnection); DataSet objDataset = new DataSet(); SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand); // 数据填充 objConnection.Open(); objAdapter.Fill(objDataset, "Excel"); objConnection.Close(); // 创建Excel对象 Excel.Application xlApp = new Excel.Application(); Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); Worksheet ws = (Worksheet)wb.Worksheets[1]; // 设置标题 xlApp.Cells[1, 1] = "会员姓名"; xlApp.Cells[1, 2] = "性别"; xlApp.Cells[1, 3] = "籍贯"; xlApp.Cells[1, 4] = "电子邮件"; // 设置格式 int iMaxRow = objDataset.Tables["Excel"].Rows.Count; int iMaxCol = objDataset.Tables["Excel"].Columns.Count; ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Name = "黑体"; ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Bold = true; ws.get_Range(ws.Cells[1, 1], ws.Cells[iMaxRow + 1, iMaxCol]).Borders.LineStyle = 1; // 填充数据 for (int iRow = 0; iRow < iMaxRow; iRow++) { for (int iCol = 0; iCol < iMaxCol; iCol++) { xlApp.Cells[iRow + 2, iCol + 1] = objDataset.Tables["Excel"].Rows[iRow][iCol].ToString(); } } // 保存Excel xlApp.Save("sheet1.xls"); // 打开Excel xlApp.Visible = true; } }} 本来是想在关键位置突出颜色显示,没弄好,再发一遍using System; using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Text;using System.Windows.Forms;using Excel;namespace ExcelReport{ public partial class FormExcelNormal : Form { public FormExcelNormal() { InitializeComponent(); } private void FormExcelNormal_Load(object sender, EventArgs e) { DataSet objDataSet = FormUtil.FormGridView("MEMBERINFO"); dgvMemberInfo.DataSource = objDataSet.Tables["MEMBERINFO"]; } // Excel导出 private void btnExcelOut_Click(object sender, EventArgs e) { string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"]; SqlConnection objConnection = new SqlConnection(strConnect); SqlCommand objCommand = new SqlCommand("SELECT MEMBERNAME, SEX, AREA, EMAIL FROM MEMBERINFO", objConnection); DataSet objDataset = new DataSet(); SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand); // 数据填充 objConnection.Open(); objAdapter.Fill(objDataset, "Excel"); objConnection.Close(); // 创建Excel对象 Excel.Application xlApp = new Excel.Application(); Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); Worksheet ws = (Worksheet)wb.Worksheets[1]; // 设置标题 xlApp.Cells[1, 1] = "会员姓名"; xlApp.Cells[1, 2] = "性别"; xlApp.Cells[1, 3] = "籍贯"; xlApp.Cells[1, 4] = "电子邮件"; // 设置格式 int iMaxRow = objDataset.Tables["Excel"].Rows.Count; int iMaxCol = objDataset.Tables["Excel"].Columns.Count; ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Name = "黑体"; ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Bold = true; ws.get_Range(ws.Cells[1, 1], ws.Cells[iMaxRow + 1, iMaxCol]).Borders.LineStyle = 1; // 填充数据 for (int iRow = 0; iRow < iMaxRow; iRow++) { for (int iCol = 0; iCol < iMaxCol; iCol++) { xlApp.Cells[iRow + 2, iCol + 1] = objDataset.Tables["Excel"].Rows[iRow][iCol].ToString(); } } // 保存Excel xlApp.Save("sheet1.xls"); // 打开Excel xlApp.Visible = true; } }} ajax异步提交怎么保持aspx原有的样式? c#代码定义和取出 两个UDP类的区别 把一个EXCEL显示出来 急!!!WebClient下载url不支持中文,如何解决? 怎么用oledbCommand操作access数据库?? 我是菜鸟,刚学c#,想问怎么在程序中设置窗体的大小? 排定的工作 null和""是否相同 高手区的一个严重问题! substring 做过基于.net框架的播放器的请进
http://support.microsoft.com/?scid=kb%3Bzh-cn%3B302084&x=14&y=14
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Excel;namespace ExcelReport
{
public partial class FormExcelNormal : Form
{
public FormExcelNormal()
{
InitializeComponent();
} private void FormExcelNormal_Load(object sender, EventArgs e)
{
DataSet objDataSet = FormUtil.FormGridView("MEMBERINFO");
dgvMemberInfo.DataSource = objDataSet.Tables["MEMBERINFO"];
}
// Excel导出
private void btnExcelOut_Click(object sender, EventArgs e)
{
string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"];
SqlConnection objConnection = new SqlConnection(strConnect);
SqlCommand objCommand = new SqlCommand("SELECT MEMBERNAME, SEX, AREA, EMAIL FROM MEMBERINFO", objConnection);
DataSet objDataset = new DataSet();
SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand);
// 数据填充
objConnection.Open();
objAdapter.Fill(objDataset, "Excel");
objConnection.Close(); // 创建Excel对象 Excel.Application xlApp = new Excel.Application();
Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
Worksheet ws = (Worksheet)wb.Worksheets[1]; // 设置标题 xlApp.Cells[1, 1] = "会员姓名";
xlApp.Cells[1, 2] = "性别";
xlApp.Cells[1, 3] = "籍贯";
xlApp.Cells[1, 4] = "电子邮件"; // 设置格式
int iMaxRow = objDataset.Tables["Excel"].Rows.Count;
int iMaxCol = objDataset.Tables["Excel"].Columns.Count;
ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Name = "黑体";
ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Bold = true;
ws.get_Range(ws.Cells[1, 1], ws.Cells[iMaxRow + 1, iMaxCol]).Borders.LineStyle = 1; // 填充数据 for (int iRow = 0; iRow < iMaxRow; iRow++)
{
for (int iCol = 0; iCol < iMaxCol; iCol++)
{
xlApp.Cells[iRow + 2, iCol + 1] = objDataset.Tables["Excel"].Rows[iRow][iCol].ToString();
}
}
// 保存Excel
xlApp.Save("sheet1.xls");
// 打开Excel xlApp.Visible = true;
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Excel;namespace ExcelReport
{
public partial class FormExcelNormal : Form
{
public FormExcelNormal()
{
InitializeComponent();
} private void FormExcelNormal_Load(object sender, EventArgs e)
{
DataSet objDataSet = FormUtil.FormGridView("MEMBERINFO");
dgvMemberInfo.DataSource = objDataSet.Tables["MEMBERINFO"];
}
// Excel导出
private void btnExcelOut_Click(object sender, EventArgs e)
{
string strConnect = System.Configuration.ConfigurationManager.AppSettings["connStr"];
SqlConnection objConnection = new SqlConnection(strConnect);
SqlCommand objCommand = new SqlCommand("SELECT MEMBERNAME, SEX, AREA, EMAIL FROM MEMBERINFO", objConnection);
DataSet objDataset = new DataSet();
SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand);
// 数据填充
objConnection.Open();
objAdapter.Fill(objDataset, "Excel");
objConnection.Close(); // 创建Excel对象
Excel.Application xlApp = new Excel.Application();
Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
Worksheet ws = (Worksheet)wb.Worksheets[1]; // 设置标题
xlApp.Cells[1, 1] = "会员姓名";
xlApp.Cells[1, 2] = "性别";
xlApp.Cells[1, 3] = "籍贯";
xlApp.Cells[1, 4] = "电子邮件"; // 设置格式
int iMaxRow = objDataset.Tables["Excel"].Rows.Count;
int iMaxCol = objDataset.Tables["Excel"].Columns.Count;
ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Name = "黑体";
ws.get_Range(ws.Cells[1, 1], ws.Cells[1, iMaxCol]).Font.Bold = true;
ws.get_Range(ws.Cells[1, 1], ws.Cells[iMaxRow + 1, iMaxCol]).Borders.LineStyle = 1; // 填充数据
for (int iRow = 0; iRow < iMaxRow; iRow++)
{
for (int iCol = 0; iCol < iMaxCol; iCol++)
{
xlApp.Cells[iRow + 2, iCol + 1] = objDataset.Tables["Excel"].Rows[iRow][iCol].ToString();
}
}
// 保存Excel
xlApp.Save("sheet1.xls");
// 打开Excel
xlApp.Visible = true;
}
}
}