【发布时间】:2020-09-18 12:50:56
【问题描述】:
我无法在 VBA 中使用其他工作簿中的函数。
我创建了一个个人工作表:“Personal_Functions.xlam”,其中个人功能位于:C:\Users\UserID\AppData\Roaming\Microsoft\Excel\XLSTART。
打开 Excel 文件时总是自动启动
我可以在我的任何工作簿中直接使用这些 UDF。
=fctTest(1, 5) 返回6
但是,我无法在代码中调用它们:
编译错误:未定义子或函数。
我尝试将 *.xlam 添加到引用中,但收到错误。
名称与现有模块、项目或对象库冲突
我也尝试制作一个全新的空 *.xlam,但得到了同样的错误。
这是不可能的,还是我必须以不同的方式称呼他们?
不起作用的示例编码:
Personal_Functions.xlam > 模块 1
Public Function fctTest(in1 As Integer, in2 As Integer)
fctTest = in1 + in2
End Function
Book1.xlsm > 模块测试
Private Sub subTest1()
Dim test As Integer
test = fctTest(1, 5)
End Sub
【问题讨论】:
-
这能回答你的问题吗? Call a VBA Function into a Sub Procedure
-
不,它描述了我在上面所做的一些事情,但没有提供解决方案。我认为这不是编程问题,而是缺少或已撤消的设置。