如何从前端执行访问数据库后端的VB代码?

时间:2012-07-25 18:48:24

标签: vba ms-access access-vba backend frontend

我将数据库拆分为包含数据表的后端和包含表格,查询,报告和模块的前端,并链接表格。其中一个表从excel表中获取数据;通常我会使用一个链表,但如果有任何查询打开,那么excel表就无法打开,所以我使用保存的导入将excel表中的所有数据都拉到表中。

现在,我想在我的前端运行DoCmd.RunSavedImportExport "savedimportnamehere"的菜单上添加一个按钮,除了保存的导入位于后端,所以我必须将该命令发送到后端...而且我不太清楚该怎么做。如果有人能指出我正确的方向,我会很感激。

1 个答案:

答案 0 :(得分:4)

您可以针对MS Access实例运行命令,因此:

Dim apAccess As New Access.Application
apAccess.OpenCurrentDatabase ("c:\docs\backend.mdb")
apAccess.DoCmd.RunSavedImportExport "savedimportnamehere"

您还可以针对db或连接的实例运行查询:

sSQL="INSERT INTO Table1 ( ADate ) " _
& "SELECT SomeDate " _
& "FROM [Excel 8.0;HDR=YES;DATABASE=Z:\Docs\Test.xls].[Sheet1$a1:a4]"