【发布时间】:2013-11-11 12:08:06
【问题描述】:
我的任务是创建一个 Access 2003 应用程序,它将充当所有其他数据库(总共 6 个)的焦点。
这 6 个数据库都将包含一个宏,用于为名为 DispenseExport 的表构建数据绑定。
最初这些数据库中的每一个都有自己的该表版本,但现在我们必须让它们都写入一个应用程序 - 我亲切地将其命名为 Omega。
Omega 将包含所有其他人将写入的DispenseExport 表。它也将是从其他数据库调用宏来写入它的数据库。
那么 - 完成此任务的最佳方法是什么?
我已经有一个示例子程序可以从另一个数据库调用宏(并且可以工作),但这里的问题是它像任何普通用户一样打开数据库 - Omega 将坐在服务器上并且需要绕过它 - 可能最好使用 SHIFT-KEY 访问方法?
如果这是最好的方法,我该如何在 VBA 中以编程方式执行此操作?
这是我目前所拥有的:
Option Compare Database
Option Explicit
'Sub to call a macro from another database
Public Sub CallMacro()
On Error GoTo ErrHandler:
Debug.Print "Opening Macro"
'/x tells the database to run the macro as soon as it is opened
Call Shell("msaccess.exe C:\path-to-database\database.mdb /x mcrTestCall", 0)
Debug.Print "Completed Macro"
ErrHandler:
If Err.Number <> 0 Then
'Create a message box with the error number and description
MsgBox ("Sorry but error number " & Err.Number & " occurred; " & vbCrLf & Err.Description)
End If
End Sub
更新
仍然没有找到答案,但相信我已经接近了。我需要了解如何模拟 HOLDING DOWN SHIFT - 有什么想法吗?
谢谢
【问题讨论】: