看起来正确但出现错误的VBscript 800A09D5

看起来正确但出现错误的VBscript 800A09D5,vbscript,Vbscript,我一直在寻找这个问题的答案,但看起来我的vbscript是正确的。宏不在同名“MasterSAP”的模块中。看不出有什么不对,你会认为这很简单,但我想不出来 Dim accessApp set accessApp = createobject("Access.Application") accessApp.OpenCurrentDataBase("S:\Salem\SCHED\SeesStuff\Resources\MasterSAPData.accdb") accessApp.Run "Ma

我一直在寻找这个问题的答案,但看起来我的vbscript是正确的。宏不在同名“MasterSAP”的模块中。看不出有什么不对,你会认为这很简单,但我想不出来

Dim accessApp
set accessApp = createobject("Access.Application")
accessApp.OpenCurrentDataBase("S:\Salem\SCHED\SeesStuff\Resources\MasterSAPData.accdb")

accessApp.Run "MasterSAP"
AccessApp.Quit
Set accessApp = nothing

很难猜测,因为代码的其余部分丢失了,但是您应该在标准模块中有一个过程,如果您没有调用,则
Run()

您应该将代码放在具有以下定义的标准模块中

Public Sub MasterSAP()
...
端接头

您还需要注意的是,此过程没有放在名为
MasterSAP
的标准模块中,因为这也会导致错误,因为过程和模块将共享同一名称空间。

很难猜测,因为其余代码缺失,但您应该在标准模块中有一个
Run()
正在调用,如果您不这样做,并且只是传递宏的名称,则会发生此错误

您应该将代码放在具有以下定义的标准模块中

Public Sub MasterSAP()
...
端接头

您还需要注意,此过程未放置在名为
MasterSAP
的标准模块中,因为这也可能导致错误,因为过程和模块将共享同一名称空间。

确保
MasterSAP
sub不在同名模块中,ie MasterSAP。这不是……但谢谢……然后将该信息编辑到问题中,因为这是导致此错误的最常见原因。这不是@Lakes所问的问题。检查包含代码的过程(而不是宏)在
模块
中,无论是
子模块
还是
函数
的名称都与
模块
的名称不同。这可能只是巧合,但您的问题与使用相同变量名称的此页面完全相同。请确保
MasterSAP
子模块不在同名模块中,ie MasterSAP。这不是……但谢谢……然后将该信息编辑到问题中,因为这是导致此错误的最常见原因。这不是@Lakes所问的问题。检查
模块
中包含代码(而非宏)的过程(无论是
还是
函数
的名称是否与
模块
的名称相同。这可能只是巧合,但您的问题与使用相同变量名称的此页面完全相同。