- 浏览: 119551 次
- 性别:
- 来自: 北京
最新评论
-
NewTamato:
你的这个写的全都是代码,不知道对于flex和spring整合的 ...
Flex+BlazeDS+Spring的一个项目笔记(2) -
agurick:
laowood 写道在不写的一般情况下都是auto吧?自动变量 ...
C中的寄存器变量和引用变量 -
laowood:
agurick 写道补充一下,auto已经过时,已经不再使用。 ...
C中的寄存器变量和引用变量 -
agurick:
补充一下,auto已经过时,已经不再使用。static 变量就 ...
C中的寄存器变量和引用变量 -
ming:
oooooooo
domino如何在数据库中存储信息
C# 中使用 Excel
using System;
using System.Collections.Generic;
using System.Text;
using System.Reflection;
using System.Runtime.InteropServices;
using Microsoft.Office.Interop.Excel;
using ExcelApplication = Microsoft.Office.Interop.Excel.ApplicationClass;
namespace ExcalDemo
...{
public class ExcelFiles
...{
public void CreateExcelFiles()
...{
//创建一个 Excel 实例
ExcelApplication excel = new ExcelApplication();
try
...{
// 注释掉的语句是:从磁盘指定位置打开一个 Excel 文件
//excel.Workbooks.Open("demo.xls", Missing.Value, Missing.Value,
//Missing.Value,Missing.Value, Missing.Value, Missing.Value,
//Missing.Value, Missing.Value, Missing.Value, Missing.Value,
//Missing.Value, Missing.Value, Missing.Value, Missing.Value);
excel.Visible = false;// 不显示 Excel 文件,如果为 true 则显示 Excel 文件
excel.Workbooks.Add(Missing.Value);// 添加工作簿
Worksheet sheet = (Worksheet)excel.ActiveSheet;// 获取当前工作表
Range range = null;// 创建一个空的单元格对象
sheet.get_Range(sheet.Cells[29,2],sheet.Cells[29,2]).Orientation=Excel.XlOrientation.xlVertical;//字体竖直居中在单元格内
range = sheet.get_Range("A1", Missing.Value);// 获取单个单元格
range.RowHeight = 20; // 设置行高
range.ColumnWidth = 20; // 设置列宽
range.Borders.LineStyle = 1; // 设置单元格边框
range.Font.Bold = true; // 加粗字体
range.Font.Size = 20; // 设置字体大小
range.Font.ColorIndex = 5; // 设置字体颜色
range.Interior.ColorIndex = 6; // 设置单元格背景色
range.HorizontalAlignment = XlHAlign.xlHAlignCenter;// 设置单元格水平居中
range.VerticalAlignment = XlVAlign.xlVAlignCenter;// 设置单元格垂直居中
range.Value2 = "设置行高和列宽";// 设置单元格的值
range = sheet.get_Range("B2", "D4");// 获取多个单元格
range.Merge(Missing.Value); // 合并单元格
range.Columns.AutoFit(); // 设置列宽为自动适应
range.NumberFormatLocal = "#,##0.00";// 设置单元格格式为货币格式
// 设置单元格左边框加粗
range.Borders[XlBordersIndex.xlEdgeLeft].Weight = XlBorderWeight.xlThick;
// 设置单元格右边框加粗
range.Borders[XlBordersIndex.xlEdgeRight].Weight = XlBorderWeight.xlThick;
range.Value2 = "合并单元格";
// 页面设置
sheet.PageSetup.PaperSize = XlPaperSize.xlPaperA4; // 设置页面大小为A4
sheet.PageSetup.Orientation = XlPageOrientation.xlPortrait; // 设置垂直版面
sheet.PageSetup.HeaderMargin = 0.0; // 设置页眉边距
sheet.PageSetup.FooterMargin = 0.0; // 设置页脚边距
sheet.PageSetup.LeftMargin = excel.InchesToPoints(0.354330708661417); // 设置左边距
sheet.PageSetup.RightMargin = excel.InchesToPoints(0.354330708661417);// 设置右边距
sheet.PageSetup.TopMargin = excel.InchesToPoints(0.393700787401575); // 设置上边距
sheet.PageSetup.BottomMargin = excel.InchesToPoints(0.393700787401575);// 设置下边距
sheet.PageSetup.CenterHorizontally = true; // 设置水平居中
// 打印文件
sheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
// 保存文件到程序运行目录下
sheet.SaveAs(System.Windows.Forms.Application.StartupPath + "\demo.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
excel.ActiveWorkbook.Close(false, null, null); // 关闭 Excel 文件且不保存
}
catch (Exception ex)
...{
MessageBox.Show(ex.Message);
}
finally
...{
excel.Quit(); // 退出 Excel
excel = null; // 将 Excel 实例设置为空
// 即便是这样, 有时在系统任务管理器中仍能看到一个 Excel 进程, 但有时也看不到
// 据非权威人事说,这是 Office 2003 的 Bug. 这个问题有待与考证.
}
}
}
}
catch (Exception ex)
...{
MessageBox.Show(ex.Message);
}
finally
...{
excel.Quit(); // 退出 Excel
excel = null; // 将 Excel 实例设置为空
// 即便是这样, 有时在系统任务管理器中仍能看到一个 Excel 进程, 但有时也看不到
// 据非权威人事说,这是 Office 2003 的 Bug. 这个问题有待与考证.
}
}
}
}
range = sheet.get_Range("B2", "D4");// 获取多个单元格
range.Merge(Missing.Value); // 合并单元格
range.Columns.AutoFit(); // 设置列宽为自动适应
range.NumberFormatLocal = "#,##0.00";// 设置单元格格式为货币格式
// 设置单元格左边框加粗
range.Borders[XlBordersIndex.xlEdgeLeft].Weight = XlBorderWeight.xlThick;
// 设置单元格右边框加粗
range.Borders[XlBordersIndex.xlEdgeRight].Weight = XlBorderWeight.xlThick;
range.Value2 = "合并单元格";
// 页面设置
sheet.PageSetup.PaperSize = XlPaperSize.xlPaperA4; // 设置页面大小为A4
sheet.PageSetup.Orientation = XlPageOrientation.xlPortrait; // 设置垂直版面
sheet.PageSetup.HeaderMargin = 0.0; // 设置页眉边距
sheet.PageSetup.FooterMargin = 0.0; // 设置页脚边距
sheet.PageSetup.LeftMargin = excel.InchesToPoints(0.354330708661417); // 设置左边距
sheet.PageSetup.RightMargin = excel.InchesToPoints(0.354330708661417);// 设置右边距
sheet.PageSetup.TopMargin = excel.InchesToPoints(0.393700787401575); // 设置上边距
sheet.PageSetup.BottomMargin = excel.InchesToPoints(0.393700787401575);// 设置下边距
sheet.PageSetup.CenterHorizontally = true; // 设置水平居中
// 打印文件
sheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
// 保存文件到程序运行目录下
sheet.SaveAs(System.Windows.Forms.Application.StartupPath + "\demo.xls", Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
excel.ActiveWorkbook.Close(false, null, null); // 关闭 Excel 文件且不保存
}
运行环境: Microsoft Office Excel 2003 + Microsoft Visual Studio 2005
1. 为项目添加 COM 组件的引用
方法如下:
项目 -> 添加引用 -> com -> Microsoft Excel Object 11.0 Object Library -> 确定
此时项目里会增加 3 个引用, 分别是: Excel、Microsoft.Office.Core、VBIDE
2. 在类文件里添加如下命名空间的引用
using System.Reflection;
using System.Runtime.InteropServices;
using Microsoft.Office.Interop.Excel;
using ExcelApplication = Microsoft.Office.Interop.Excel.ApplicationClass; //为了与 System.Windows.Forms 命名空间下的 Application 类有所区分, 纯属方便代码的编写.
注: 最好不要用在窗体类中使用. 因为,当引入 Microsoft.Office.Interop.Excel 命名空间后, Microsoft.Office.Interop.Excel 命名空间下的 Application 接口会同 System.Windows.Forms 命名空间下的 Application 类产生二义性冲突. 要使用 Application 类, 就必须在 Application 前面添加完整的命名空间名.
经过以上 2 步的操作就可以使用 Excel 了. 但是, 关于 Excel 的 MSDN 很少, 多数都是 English 的. 这样对使用 Excel 带来了不便. 想调整单元格的大小都十分困难. 这里我告诉大家一个简单实用的笨方法. 那就是: 打开你的 Excel, 录制宏. 然后根据生成的 VB 代码, 去到 MSDN 里查相关 C# 的帮助.
发表评论
-
redhat 安装 oracle
2013-01-23 12:02 1053装完RHEL5之后遇到的 第一个问题 通过SSH ... -
fedora 14上安装 Oracle 11g
2011-03-31 12:48 4053本文介绍了在Fedora 14 64-bit上安装Or ... -
Flex+BlazeDS+Spring的一个项目笔记(2)
2009-07-30 08:26 3129applicationContext.xml 配置如下 ... -
Flex+BlazeDS+Spring的一个项目笔记(1)
2009-07-29 23:43 1646把最近在做的一个项目的研究成果贴出来做个笔记。项目是要做一个本 ... -
SQL能完成的逻辑都在SQL中
2009-07-21 19:16 1038decode, case的用法 select t.star ... -
Promises don't come easy
2009-05-11 13:48 1131I should have known all along ... -
oracle 9*9乘法口诀表
2009-04-14 18:19 1960select replace(reverse(sys_conn ... -
oracle笔记1
2009-03-31 22:52 1464conn / as sysdba -切换到sys用户 sele ... -
C中的寄存器变量和引用变量
2009-03-25 19:11 5612总共有auto,static,register,extern。 ... -
shell 初步
2009-03-15 18:24 3572ps -ef | grep redis du -sh 查看文件 ... -
File ToBase64String
2009-02-03 15:00 1213public static string Serializ ... -
David Cook - Always Be My Baby
2008-11-05 18:28 1335Studio Version Song ... -
企业应用中C\S是怎样的架构?
2008-10-31 10:19 3974我们公司开发程序一般是 C# Winform 做客户端,EJB ... -
C#画图
2008-10-24 10:06 2368翻出以前刚到公司自己做的这个,以前查资料作了半天,发现 现在 ... -
Can’t find P/Invoke DLL sqlcemeNN.dll
2008-09-01 11:30 2388Can’t find P/Invoke DLL sqlceme ... -
JavaScript replace() 方法
2008-08-27 13:43 2259定义和用法 replace() 方法用于在字符串中 ... -
开发基于Domino/Notes的动态Web网站
2007-09-27 08:08 1486开发基于Domino/Notes的动态Web网站 用户的需求 ... -
[精华]Linux记事本最常用的命令,迅速掌握Linux
2008-06-28 09:51 4369自己整理的笔记,,适合linux初学者,老手就不要看了,呵呵 ... -
Java移动文件
2008-06-14 19:50 34485一: //文件原地址 File oldFile = ne ... -
大道至简-java之23种模式一点就通
2008-06-12 10:23 1580一、创建型模式 FACTORY ...
相关推荐
c# 读写 Excel 代码 PrintGiftVolume.rar
C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出excel代码C# 导出...
c#代码读写excel数据demo,能实现读写EXCEL表格的数据。
用C#读写Excel文件,详细介绍了#读写Excel文件的各种操作的代码;
This article will help to write data to Excel using C# without playing with Excel.Application. With the help of the ExcelFileWriter class, it is very easy to write data to an Excel sheet.
C# 导出excel 实例代码C# 导出excel 实例代码C# 导出excel 实例代码
C#操作excel表,在代码中导出excel
C#创建 读 写 Excel 在Excel中插入图片代码 COM 对于开发office应用和学习office的兄台们可以看看。。
C#读取excel文件,学习! C#读取Excel源代码
C#读取EXCEL代码的几种方法 C#读取EXCEL代码的几种方法
C# 写的Excel导入mysql数据库,目前我导入的最大上20万数据其他的没有测试过
"Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"; OleDbDataAdapter ExcelDA = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", strConn); DataSet ExcelDs = new DataSet(); try { ExcelDA.Fill(ExcelDs...
讲解了 Missing参数的用法,读(取)DataTable和DateSet里面 简单化 我用了3个小函数说明一切
C#导出excel代码使用导出学生信息为例,讲解C#如何导出EXCEL
C# Excel上传代码,可直接使用,C# Excel上传代码,可直接使用
C#操作Excel代码示例
C# 调用EXCEL代码 C# 调用EXCEL代码
最近帮人写了个简单的户籍管理系统。现有数据全部在Excel文件中。 为此首先写了一个Import方法,把数据全部导入Access数据库。 系统中也实现了一个Export方法,来将统计结果从ListView导出到Excel文件。 Excel的读取...
C#从Excel读取数据的实现方法,虽然只是个小例子,但对自己的帮助挺大的,希望和大家一起分享。
C#操作Excel(OLEDB)的实例,你可以参考这个代码发挥一下,写出属于自己的作品