在VBA中如何调用过程与函数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在VBA中如何调用过程与函数?相关的知识,希望对你有一定的参考价值。

一、直接调用或者call 过程名 call 函数名就可以了,比如 

Private Sub CommandButton1_Click()

MsgBox "你调用了CommandButton1_Click过程"

End Sub

Private Sub CommandButton2_Click()

Call CommandButton1_Click

End Sub

二、如果有参数的话需要带上参数,比如

Private Sub CommandButton1_Click()

Call MsgStr("这是过程/函数调用示例")

End Sub

Sub MsgStr(str As String)

MsgBox str

End Sub

扩展资料:

输入值的集合X被称为f的定义域;可能的输出值的集合Y被称为f的值域。函数的值域是指定义域中全部元素通过映射f得到的实际输出值的集合。注意,把对应域称作值域是不正确的,函数的值域是函数的对应域的子集。

计算机科学中,参数和返回值的数据类型分别确定了子程序的定义域和对应域。因此定义域和对应域是函数一开始就确定的强制进行约束。另一方面,值域是和实际的实现有关。

参考资料来源:百度百科-函数

参考技术A 直接调用或者call 过程名 call 函数名就可以了,比如 
Private Sub CommandButton1_Click()
    MsgBox "你调用了CommandButton1_Click过程"
End Sub

Private Sub CommandButton2_Click()
    Call CommandButton1_Click
End Sub
效果:

如果有参数的话需要带上参数,比如
Private Sub CommandButton1_Click()
    Call MsgStr("这是过程/函数调用示例")
End Sub
Sub MsgStr(str As String)
    MsgBox str
End Sub
效果

参考技术B 方法一: call 函数(过程)名
方法二: 函数(过程)名本回答被提问者采纳

ExcelVBA如何调用API DLL(Delphi生成)

Public Declare Function plock Lib "passzy.dll" (ByVal s As String) As Boolean
Declare Function punlock Lib "passzy.dll" (ByVal s As String) As Boolean
在excel中执行的时候,提示第一行错误:编译错误,常数、固定长度字符串…………
我的delphi中声明:(DLL中包含窗体,其它没什么特别的了)
function punlock(s:pchar):boolean; stdcall;
function plock(s:pchar):boolean; stdcall;
编译好的dll,用delphi本身是可以完美调用的。
另外这个DLL无法regsvr32.exe注册,无法用VBA引用。请问我应该怎么做?
(已经解决了,无满意答案)Public改成Private就可以调用了,另外VBA的boolean与Delphi类型格式不一样,传递无意义,必须用整形、浮点或字符串。改成long对integer后完美运行

参考技术A :档案信息化建设的目标就是在现代化的技术条件下,一方面促进档案本身信息进入社会交流系统,在社会中广为传播,另一方面就是将档案中的信息与其他社会信息形式融合使用,在社会中传播,广泛地服务于社会。只有档案信息化建设与社会信息化同步发展,为促进国民经济和社会发展,才能确保提供快捷有效的档案信息服务。 参考技术B Public改成Private就可以调用了,另外VBA的boolean与Delphi类型格式不一样,传递无意义,必须用整形、浮点或字符串。改成long对integer后完美运行本回答被提问者采纳 参考技术C 办得到,但是要修改VB(因为它本来不行)
这里有详细说明和修改文件下载

以上是关于在VBA中如何调用过程与函数?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VBA 的另一个函数中调用我在 VBA 中创建的函数?

如何在工作表中调用 VBA 函数?

Excel中的VBA如何调用Java呀?

如何在 VBA 中调用字符串中的函数

用Excel使用VBA时显示运行错误5,错误调用参数,程序特别简单,如图,求问哪里出错了

如何在 VBA 中调用带有列表和另一个参数的函数?