(vb.net)操作Excel文件1
2010-06-17 16:17
405 查看
VS2005平台,应用程序生成指定格式的Excel文件
1.“添加引用”->"COM"->"Microsoft Excel 11.0 Object Library"
2.导入命名空间
Imports Microsoft.Office.Interop 或者 Imports Microsoft.Office.Interop.Excel
3.具体操作
Dim oXL As Excel.Application '定义excel应用程序
Dim oWB As Excel.Workbook '定义工作簿
Dim oSheet As Excel.Worksheet '定义工作表
oXL = CreateObject("Excel.Application")'创建Excel应用程序对象
oXL.Visible = True '显示excel 程序
oWB = oXL.Workbooks.Add '添加新工作簿
oSheet = oWB.Sheets(1)'获得第1个工作表的控制句柄
osheet.Columns .ColumnWidth =30.0'设置工作表的列宽
oSheet.Columns("A:A").ColumnWidth = 35.0 '设置第一列列宽
oSheet.Columns("B:B").ColumnWidth = 20.0
oSheet.Rows.RowHeight = 25.0'设置工作表的行高
oSheet.Rows("1:1").RowHeight = 15‘设置第一行行高
oSheet.Range("A1", "D1").Merge()‘合并单元格
oSheet.Range("A1", "D1").HorizontalAlignment = 3 '水平居中
oSheet.Range("A1", "D1").Value = "XXX问卷表" '填入单个数据
oSheet.Range("A1", "D1").WrapText = True'设置自动换行吧
Dim info(5, 2) As String'定义块数据,并赋值
oSheet.Range("A1", "A5").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter’水平方向居中对齐
oSheet.Range("B1", "B5").HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft '水平方向左对齐
oSheet.Range("B1", "B5").VerticalAlignment = Excel.XlVAlign.xlVAlignTop'垂直方向靠上对齐
oSheet.Range("A1", "B5").Value = info'填入块数据,这样可以节省应用程序和Excel文件的数据交换次数
或者:oSheet.Range("A1:B5").Value = info
oSheet.Range("A1", "E22").Borders.LineStyle = 1 '设置边框
oSheet.Range("A1", "E22").Borders.LineStyle = Excel.XlLineStyle.xlContinuous
'记着释放对象
oSheet = Nothing
oWB = Nothing
oXL.Quit()
oXL = Nothing
4.
Excel文件的格式比较多,要快速在应用程序中生成自己想要的格式,可以这样做:
打开Excel应用程序,选择“工具”->“宏”->“录制新宏”
设置好指定的格式
停止录制宏
单击“工具”->“宏”->“宏”,选择刚才录制的宏即可,在打开的文件中可以查看生成指定格式的具体代码操作步骤
遇到不懂的枚举值或者属性值,可以到VS2005的对象浏览器,或MSDN中查阅
(这一招也是在网上学到,挺管用的,呵呵)
5.一个小的设置效果
(主要查阅了MSDN上的资料,呵呵)
1.“添加引用”->"COM"->"Microsoft Excel 11.0 Object Library"
2.导入命名空间
Imports Microsoft.Office.Interop 或者 Imports Microsoft.Office.Interop.Excel
3.具体操作
Dim oXL As Excel.Application '定义excel应用程序
Dim oWB As Excel.Workbook '定义工作簿
Dim oSheet As Excel.Worksheet '定义工作表
oXL = CreateObject("Excel.Application")'创建Excel应用程序对象
oXL.Visible = True '显示excel 程序
oWB = oXL.Workbooks.Add '添加新工作簿
oSheet = oWB.Sheets(1)'获得第1个工作表的控制句柄
osheet.Columns .ColumnWidth =30.0'设置工作表的列宽
oSheet.Columns("A:A").ColumnWidth = 35.0 '设置第一列列宽
oSheet.Columns("B:B").ColumnWidth = 20.0
oSheet.Rows.RowHeight = 25.0'设置工作表的行高
oSheet.Rows("1:1").RowHeight = 15‘设置第一行行高
oSheet.Range("A1", "D1").Merge()‘合并单元格
oSheet.Range("A1", "D1").HorizontalAlignment = 3 '水平居中
oSheet.Range("A1", "D1").Value = "XXX问卷表" '填入单个数据
oSheet.Range("A1", "D1").WrapText = True'设置自动换行吧
Dim info(5, 2) As String'定义块数据,并赋值
oSheet.Range("A1", "A5").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter’水平方向居中对齐
oSheet.Range("B1", "B5").HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft '水平方向左对齐
oSheet.Range("B1", "B5").VerticalAlignment = Excel.XlVAlign.xlVAlignTop'垂直方向靠上对齐
oSheet.Range("A1", "B5").Value = info'填入块数据,这样可以节省应用程序和Excel文件的数据交换次数
或者:oSheet.Range("A1:B5").Value = info
oSheet.Range("A1", "E22").Borders.LineStyle = 1 '设置边框
oSheet.Range("A1", "E22").Borders.LineStyle = Excel.XlLineStyle.xlContinuous
'记着释放对象
oSheet = Nothing
oWB = Nothing
oXL.Quit()
oXL = Nothing
4.
Excel文件的格式比较多,要快速在应用程序中生成自己想要的格式,可以这样做:
打开Excel应用程序,选择“工具”->“宏”->“录制新宏”
设置好指定的格式
停止录制宏
单击“工具”->“宏”->“宏”,选择刚才录制的宏即可,在打开的文件中可以查看生成指定格式的具体代码操作步骤
遇到不懂的枚举值或者属性值,可以到VS2005的对象浏览器,或MSDN中查阅
(这一招也是在网上学到,挺管用的,呵呵)
5.一个小的设置效果
oSheet.Range("A7").Value = "申请理由:" oSheet.Range("A7").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter oSheet.Rows("8:8").RowHeight = 37.5'设置行高 oSheet.Range("B7", "D8").Merge() oSheet.Range("B7", "D8").HorizontalAlignment = Excel.XlHAlign.xlHAlignLeft oSheet.Range("B7", "D8").VerticalAlignment = Excel.XlVAlign.xlVAlignTop oSheet.Range("B7", "D8").Value = "" oSheet.Range("B9", "C9").Merge() oSheet.Range("B9", "C9").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter oSheet.Range("B9", "C9").Value = "主管签字:" oSheet.Range("D9").HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter oSheet.Range("D9").Value = " 年 月 日" oSheet.Range("A7", "D9").Borders.LineStyle = Excel.XlLineStyle.xlContinuous '设置总的边框样式 oSheet.Range("A7", "D9").Borders(Excel.XlBordersIndex.xlDiagonalDown).LineStyle = Excel.Constants.xlNone '再做修改 oSheet.Range("A7", "D9").Borders(Excel.XlBordersIndex.xlDiagonalUp).LineStyle = Excel.Constants.xlNone oSheet.Range("A7", "D9").Borders(Excel.XlBordersIndex.xlInsideVertical).LineStyle = Excel.Constants.xlNone oSheet.Range("A7", "D9").Borders(Excel.XlBordersIndex.xlInsideHorizontal).LineStyle = Excel.Constants.xlNone '这种设置应该比较适合打印吧
(主要查阅了MSDN上的资料,呵呵)
相关文章推荐
- VB.NET使用EXCEL常见操作
- C#.net实现windows窗体程序对Excel文件的读写操作
- vb.net 读取EXCEL文件中的数据
- vb.net office excel 和wps共存,创建正确的excel对象以便操作excel表格
- VB.NET文件操作(zz)
- vb.net程序直接读取Excel文件内容
- VB.NET 打开Excel文件,读取Excel内容,添加到DataGridView中并显示
- 使用VB.NET的FileInfo和DirectoryInfo类进行文件操作
- [VB.NET]安装完office2003后,无法找到com库文件Interop.Excel.dll?
- 在ASP.NET中操作文件的例子(VB)
- 自己写的文件操作的function和Sub vb.net dll
- 转 VB操作Excel文件属性和方法(2)
- VB.NET使用EXCEL常见操作
- vb.net操作excel时,如何判断单元格内容为空
- vb.net对excel的操作------感谢:就爱小毛虫
- 有Excel格式类型文件进行操作控件Spire.XLS for .NET
- VB.NET使用EXCEL常见操作
- asp.net 操作 excel 出现 class 组件错误 或 打开文件错误
- asp.net 在IIS下操作Excel文件权限不足的解决方法
- vb.net 下的 CSV文件操作