还有可以用RAR打包成自解压文件,把你的EXCEL和ACCESS放进去就成。
VBA本用是寄在EXCEL中的,没有生成EXE的功能,也不可能打包ACCESS文件。
首先,DLL封装应该不是太难的事情,特别是你这个更简单,但是你的函数本身是有错误的,你的函数名称为t,而你函数内部又定义了一个变量tas
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文件了!补上附件:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)