Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 运行码不在MS Access中运行公共函数_Vba_Ms Access - Fatal编程技术网

Vba 运行码不在MS Access中运行公共函数

Vba 运行码不在MS Access中运行公共函数,vba,ms-access,Vba,Ms Access,我是MS Access的新手,我正在尝试创建一个调用VBA代码的简单宏。 这里的VBA代码是一个示例(它也不运行) 你认为你能在这里找到问题吗? 谢谢 另外,我使用的是14.0.7177.500版(32位)。这不是我的选择。。(如果是,我就不会使用access.:p)函数最常用的用法是返回一个或多个值。您的函数似乎没有返回任何值。在函数的末尾,通常会有一行代码,说明函数将返回什么值,例如 RunImport = JulianSD - JulianED End Function 像这样

我是MS Access的新手,我正在尝试创建一个调用VBA代码的简单宏。 这里的VBA代码是一个示例(它也不运行)

你认为你能在这里找到问题吗? 谢谢


另外,我使用的是14.0.7177.500版(32位)。这不是我的选择。。(如果是,我就不会使用access.:p)

函数最常用的用法是返回一个或多个值。您的函数似乎没有返回任何值。在函数的末尾,通常会有一行代码,说明函数将返回什么值,例如

    RunImport = JulianSD - JulianED
End Function
像这样的行通常会插入到“End Function”行之前。但是,如果您的目的不是返回值,而是只想运行vba宏,则可能需要将函数更改为子程序

Public Sub RunImport()
'code goes here
End Sub

您是将函数放在通用模块中还是放在宏使用的同一对象后面?两者都为我工作。为什么要使用宏?我正在运行14.0.7177.5000版(32位),它适合我。(我不确定
.500
.5000
之间是否有任何区别)你确定是功能不好吗?也许是你在它之前发布的设置警告。也。。。另一个好习惯是在Dim语句中声明所有变量类型。在公共函数之前使用“Option Explicit”来帮助提醒您完整地写出Dim。“Option Explicit”强制变量位于Dim语句中,但不会强制声明数据类型。如果未指定数据类型,VBA将默认为variant。另外请注意,“如果函数名称与模块名称相同,则无法从宏调用函数过程。”除非您希望宏调用VBA过程。宏只能调用函数,不能调用子函数。这就是为什么我在前面的评论中问——为什么要使用宏?
Public Sub RunImport()
'code goes here
End Sub