您的位置:首页 > Web前端 > CSS

【经典】C#winform从数据集导出Excel(带指定Excel样式) 转

2010-02-06 21:54 507 查看
C#winform从数据集导出Excel(带指定Excel样式) 转

【转】 http://hi.baidu.com/if20/blog/item/d4eb7a87111f7721c65cc310.html

 

using Excel;
using System.Reflection;
using System.Diagnostics;

string filename = "";
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = @"*.xls|所有文件(*.*)/";
saveFileDialog.FilterIndex = 1;
saveFileDialog.RestoreDirectory = true;
string str = "测试啊" + System.DateTime.Now.ToString("yyyy-MM-dd") + ".xls";
saveFileDialog.FileName = str;

if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
filename = saveFileDialog.FileName.ToString();

//this.Cursor = Cursors.WaitCursor;
//System.Globalization.CultureInfo CurrentCI = System.Threading.Thread.CurrentThread.CurrentCulture; //备份文化环境
//System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); //设置文化环境

Excel.Application myExcel = new Excel.Application();
if (myExcel == null)
{
MessageBox.Show("无法创建Excel对象,可能您的机子未安装Excel !");
return;
}
object missing = System.Reflection.Missing.Value;

Excel.Workbook workbookData = myExcel.Application.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet xlSheet = (Worksheet)workbookData.Worksheets[1];//取得sheet1

xlSheet.Cells[1, 1] = "聚易网络科技";
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).MergeCells = true;//合并单元格

//设置主标题单元格的样式
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).HorizontalAlignment = XlHAlign.xlHAlignCenter; //水平对齐方式
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).VerticalAlignment = XlVAlign.xlVAlignCenter; //垂直对齐方式
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).Font.Bold = true;//字体加粗
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).Font.ColorIndex = 0; ;//字体颜色
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).Font.Italic = true;//是否斜体
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).Font.Size = 22; //字体大小
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).Borders.LineStyle = XlLineStyle.xlContinuous;//边框样式
xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[1, 10]).RowHeight = 40;//行高

xlSheet.Cells[2, 1] = "(结算日期:" + DateTime.Now.ToString("yyyy年MM月dd日") + ")";
xlSheet.get_Range(xlSheet.Cells[2, 1], xlSheet.Cells[2, 10]).MergeCells = true;//合并单元格
xlSheet.get_Range(xlSheet.Cells[2, 1], xlSheet.Cells[2, 10]).RowHeight = 33.75;//行高

xlSheet.Cells[3, 1] = "客户名:";
xlSheet.get_Range(xlSheet.Cells[3, 1], xlSheet.Cells[3, 2]).MergeCells = true;//合并单元格
xlSheet.Cells[3, 3] = "张三";
xlSheet.get_Range(xlSheet.Cells[3, 3], xlSheet.Cells[3, 5]).MergeCells = true;//合并单元格
xlSheet.Cells[3, 6] = "会员卡号:";
xlSheet.get_Range(xlSheet.Cells[3, 6], xlSheet.Cells[3, 7]).MergeCells = true;//合并单元格
xlSheet.Cells[3, 8] = "`88008888";
xlSheet.get_Range(xlSheet.Cells[3, 8], xlSheet.Cells[3, 10]).MergeCells = true;//合并单元格

workbookData.Saved = true;
xlSheet.SaveAs(filename, missing, missing, missing, missing, missing, missing, missing, missing, missing);
myExcel.Quit();
MessageBox.Show("导出成功!");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息