使用VB.NET创建Excel.NET程序

来源:互联网 发布:软件职业教育 编辑:程序博客网 时间:2024/04/24 18:00

使用.NET也可以很方便地操作Excel,可以在.NET中创建可供Excel使用的组件,也可以在.NET中使用Excel创建Excel.NET程序,还可以用.NET创建Excel应用程序。下面是在.NET中直接调用Excel对象模型进行编程的简单示例。


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -一个简单的Excel.NET程序

1、启动Visual Studio 2005.net,选择菜单“文件”——“新建项目”命令,弹出“新建项目”对话框。在该对话框左侧的“项目类型”列表中,选择Visual Basic下的Windows节点,然后在右侧的“模板”框中选择“Windows应用程序”。在下面的“名称”框中输入文件名“FirstNetForExcelApp”,单击“确定”按钮。


2、选择菜单“项目”——“添加引用”命令,在弹出的“添加引用”对话框中选择“COM”选项卡,选中“Microsoft Excel 11.0 Object Library”,单击“确定”按钮。
 

3、在窗体中添加一个“按钮”控件,将其(name)属性设置为“CreateExcelWorkbook”,text属性设置为“创建工作簿”。


4、双击该按钮,在窗口中输入下面的代码:
Private Sub CreateExcelWorkbook_Click(ByVal sender As System.Object, ByVal e As _System.EventArgs) Handles CreateExcelWorkbook.Click       '声明变量,依次为Excel应用程序、工作簿、工作表、单元格        Dim App1 As Microsoft.Office.Interop.Excel.Application        Dim wb As Microsoft.Office.Interop.Excel.Workbook        Dim ws As Microsoft.Office.Interop.Excel.Worksheet        Dim rng As Microsoft.Office.Interop.Excel.Range       '创建Excel应用程序        App1 = New Microsoft.Office.Interop.Excel.Application        App1.Visible = True        '添加工作簿        wb = App1.Workbooks.Add       '指定工作表        ws = wb.Worksheets("Sheet1")        '指定单元格        rng = ws.Range("A1")       '向单元格中写值        rng.Value = "My Workbook by .NET!"       '在工作簿中添加一个工作表并放在工作表Sheet3的后面        wb.Worksheets.Add(After:=wb.Worksheets("Sheet3"))        '将工作表Sheet1设置为当前工作表        ws.Activate()       '在默认文件夹中保存工作簿        wb.SaveAs("MyFirstNetWorkbook")        MessageBox.Show("本工作簿用Visual Basic 2005.net创建,很容易的.", "创建工作簿")End sub 

代码说明:与在VBA中一样,先进行变量声明,注意到不需要用Set语句。App1.Visible=True语句使Excel工作簿可见,MessageBox指令与MsgBox函数一样,弹出消息对话框。


5、按F5键运行。


6、也可以将该程序编译为单独的安装程序发布。即选择菜单“生成”——“发布FirstNetForExcelApp”命令,可选择发布选项和发布的位置,所生成的文件如图4所示。这样,其它用户就可以选择安装文件进行安装,然后就可以使用这个程序了。示例文档见FisrtApplication。UploadFiles/2006-12/1216157798.rar

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -小结
1、尽管.NET和VBA有很多不同,但基本的对象操作是相同的,特别是在Visual Basic环境下,如果有深厚的VBA基础,在对.NET有初步了解后,也能很快的编写出操作Excel的程序来。
建议熟悉VBA的朋友使用Visual Basic.net,它们的编程风格相似,有助于快速上手。
2、使用.NET可以很方便地生成独立的软件。这也不必担心代码泄漏。
3、同时,使用.NET的安全性大大增强。
4、当然,使用.NET和VBA各有优势。如果是在Excel中想自动化工作任务或增强一些功能特性,可以使用VBA;而如果想要程序成为一个独立的软件,或是集成大型的系统和应用程序,则使用.NET更为合适。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -学习资源链接
(1) http://msdn2.microsoft.com/en-us/office/aa905533.aspx
(2)Microsoft Visual Studio Tools for the Microsoft Office System:
http://blogs.msdn.com/vsto2/
(3) Best of Blogs: Visual Studio 2005 Tools for Office:
http://msdn2.microsoft.com/en-us/office/aa537189(office.11).aspx
(4)ScottGu's Blog:
http://weblogs.asp.net/scottgu/archive/2006/11/13/Office-2007_2C00_-VS-2005-Tools-for-Office_2C00_-and-VS-2005-Extensions-for-SharePoint.aspx
By fanjy in 2006-12-15
原创粉丝点击