欢迎来到天天文库
浏览记录
ID:37713369
大小:316.00 KB
页数:7页
时间:2019-05-29
《vb封装excel宏代码的三个方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、VB封装Excel_VBA成DLL技巧 使用VB6.0在WinXP_sp2、Excel2000环境下制作、测试通过。一、启动VB6.0: 执行:“文件夹(F)”——“新建(N)”——选择“ActiveXDLL”,如下图1:二、引用:VB中对Excel的引用 执行:“工程(P)”——“引用(N)”——选择所要引用的项目:如下图2Excel2000中:MicrosoftExcel9.0 ObjectLibraryMicrosoft Office 9.0 ObjectLibraryExcel2003中
2、:MicrosoftExcel11.0 ObjectLibraryMicrosoftOffice11.0 ObjectLibrary三、编写代码: 1、将工程默认名称“工程1”,改为“zygtest”,将类模块默认名称“Class1”,改为“zyg365”, 2、在类模块的代码编辑区写入代码:如下图3 模块名称为“hongtong”,代码如下 在VB中编写代码时:要注意以下声名DimXLAPPAsObjectSetXLAPP=GetObject(,"Excel.Application")代码
3、中引用对象,如SHEET,Cell等,前面要加“XLAPP.” (或按照Sub hongtong()中的格式编写。)Sub hongtong() DimexcelAppAsNewExcel.Application DimexcelWorkBookAsExcel.Workbook DimexcelWorksheetAsExcel.Worksheet SetexcelWorkBook=excelApp.Workbooks.Add '创建新工作簿 SetexcelWorksheet=exce
4、lWorkBook.Sheets(1) excelWorksheet.Cells(2,3)="宏通" '写入数据 excelWorksheet.Cells(3,4)="zyg365" '写入数据 excelApp.Visible=True '显示excel界面,用于调试 excelWorkBook.PrintPreview '打印预览 excelWorkBook.PrintOut '打印输出 excelWorkBook.Saved=True 'excelW
5、orkBook.Close '关闭工作薄 'excelApp.Quit '退出excelEndSub四、工程属性设置:(可以不设置,本步骤可以省略) 为了使自己开发的程序更规范,可以对本工程的属性加以描述:如下图4 执行:“工程(P)”——“工程1属性(E)…”(当前工程中为:“zygtest属性(E)…”)五、保存工程、测试、打包生成Dll文件:1、保存:单击保存,保存到一个文件夹中;2、测试:执行工具栏上的“启动”(右向的三角图标)按钮,检查是否存在错误;3
6、、打包生成Dll文件: 执行:“文件(F)”——“生成工程1.dll(K)”(当前工程中为:“zygtest.dll”),重命名为“zyg.dll”,至此,Dll文件制作结束。六、在Excel_VBA工程中引用、调用zyg.dll文件:如下图51、引用zyg.dll文件: 首先在Excel的VBE窗口中,执行“工具(T)”——“引用(R)”——在“引用”对话框中,单击“浏览(B)…”按钮,找到“zyg.dll”文件——“确定”即可。 在工作簿事件中,编写代码:工作簿启动时,注册“zyg.dll”控
7、件,工作簿关闭时,反注册“zyg.dll”控件:在ThisWorkbook中:PrivateSubWorkbook_Open()'注册、引用zyg.dll Shell"Regsvr32/s"&VBA.Chr(34)&ThisWorkbook.Path&"zyg.dll"&VBA.Chr(34),vbHideEndSubPrivateSubWorkbook_BeforeClose(CancelAsBoolean)'反注册zyg.dll Shell"Regsvr32/u/s"&VBA.Chr(34)&
8、ThisWorkbook.Path&"zyg.dll"&VBA.Chr(34),vbHideEndSub2、编写调用zyg.dll中代码的模块:Subtest() DimkkAs New zyg365 'zyg365为VB中类模块名称:输入完New后,敲空格键, '直接出现选择列表框,从中选择“zyg365” 'kk可任意命名 kk.hongtong 'hongtong为
此文档下载收益归作者所有