[英]Run access module from Excel VBA
我正在尝试在Access上运行此模块:
Public Sub Retriever_P(path)
DoCmd.TransferSpreadsheet acImport, 10, "Product_Details", path, True, ""
End Sub
从Excel中的此VBA代码
Private Sub CommandButton210_Click()
Dim appAccess As Access.Application
Set appAccess = New Access.Application
Dim Target As String: Target = ThisWorkbook.Sheets("CODE").Cells(8, 4).Value
Dim path As String: path = ThisWorkbook.Sheets("CODE").Cells(5, 13).Value
appAccess.OpenCurrentDatabase Target
appAccess.Visible = True
appAccess.DoCmd.SetWarnings False
appAccess.UserControl = True
appAccess.DoCmd.OpenQuery "Clean Product_Details"
appAccess.Run "Retriever_P", path
appAccess.CloseCurrentDatabase
End Sub
但我收到此错误2517,“ Microsoft Access无法找到过程“ Retriever_P”
Excel代码是一个较大的宏的一部分,该宏创建一个DB,然后将其发送给Access。 有任何想法吗?
先感谢您!
我找到了解决方案:问题是子名称与模块名称相同。 我不知道它必须有所不同,但我希望有人会发现它有用! 谢谢大家的回答!
我在运行一个简单的测试试图通过Excel过程在空数据库(VBA代码除外)中运行Access VBA函数时遇到另一个问题。 没有任何其他对象(表/窗体/等),则无法找到Access VBA功能。 放入名义表后,从Excel VBA调用Access VBA函数成功。 拥有空数据库的情况并不常见,但正如我所说,我只是在进行一次试验以查看该方法是否有效。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.