如何将vba代码封装为dll或com

如何将vba代码封装为dll或com,第1张

可以将vba的函数和过程封装成ActiveX Dll 或 ActiveX 控件伍闷纤 封装之后要使用的话,如果是ActiveX Dll的话就需腔仿要先注册DLL再声明函数,和API函数一样,ActiveX 控件需要先注册再在部件里添加,并添加到窗体里,不需要声罩孝明 具体vb制作ActiveX 控件的...

如果开发可以用,打包应用程序软件进行打包做备成Setup.exe的安装文茄冲件,具颤胡歼体的打包程序有很多。

还有可以用RAR打包成自解压文件,把你的EXCEL和ACCESS放进去就成。

VBA本用是寄在EXCEL中的,没有生成EXE的功能,也不可能打包ACCESS文件。

首先,DLL封装应该不是太难的事情,特别是你这个更简单,但是你的函数本身是有错误的,你的函数名称为t,而你函数内部又定义了一个变量t

as

integer,显然这是最基本的语法问题。为了防止本错误,我将你函数名称修改为了tt,然后修改了最后一行的代码tt

=

ar(t)

于是你的Function就变成了:

Function

tt(ByVal

mycell

As

Range)

'该函数用于提取简单的算术运算公式,可提取运算符号集

"(,-,*,/,^,)"

......

tt

=

ar(t)

End

Function

OK,谨以上述代码生成DLL文件,方法如下:

第一步:打开VB新建,选择ActiveX

DLL;

第二步:将你上面的代码,按照我的修改之后复制到Class1类模块里面,

以上两步因为太过于简单,我都不好意思截图了!

第三步:引用,这个很重要,参考腔磨弯截图,选中类似于"Microsoft

Excel

14.0....."这个部件伍闷;

确定之后,得到的可用的引用中增加了上图中我选中的那个选项,那么DLL成功一半,接着

第四步:修改工程属性名称为myFunctions,修改类Class1的名称为myFunction,参考截图:

myFunctions是我们生成的Dll的名称,而myFunction是我们在Excel的VBA中使用时引用的对象名。

完成以上四步之后,OK,点击VB的“文件”

-

“生成myFunctions.dll”。

OK,到此为止,DLL文件封装完毕。

然后就是使用,在EXCEL的VBE窗口中,通过“工具”-

“引用”-”浏览“选择我们刚刚生成的DLL文件myFunction.dll,然后通过图中的代码测试,注意C12单元格中,随便输入一个代数计算式:

如游竖果不懂,可追问!应该够详细了吧!忘记附上DLL文件了!补上附件:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12377483.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存