我所拥有的是微软的问题模板,这是我真正需要它的目的。我已将其转换为通过将对象导出为客户端对象而现在不再是Web数据库。
我想拆分这个数据库,这样不仅可以让多个用户同时使用它,而且还可以更好地使用它。
当我拆分数据库时,链接到表的宏会转到后端,所以当前端需要使用它时会出错。 下面是在前端按下添加注释按钮时调用的添加注释宏的示例。
这是嵌入按钮的宏
这些可以转换为VBA并按照它的意图与后端进行交互,如果是这样,我将从哪里开始。我找到了一个答案,但我发现所有人都说“现在我已经走了vba路线很好”或者类似但实际上并没有显示它的工作情况。
答案 0 :(得分:1)
以下是转换后的数据宏到VBA。它还没有100%,因为我已经对用户ID进行了硬编码,但这将在今天晚些时候修复,但我希望它能够很好地理解如何将数据宏转换为VBA,因为这对我来说是一次学习经历
Private Sub cmdAddaComment_Click()
Dim db As dao.Database, theComments As Recordset
Set db = DBEngine.Workspaces(0).Databases(0)
Set theComments = db.OpenRecordset("Comments")
theComments.MoveLast
theComments.AddNew
theComments!IssueID = Me.ID
theComments!CommentDate = Now
theComments!Comment = Me.txtAddComment
theComments!UserID = 2
theComments.Update
Me.txtAddComment = ""
DoCmd.RepaintObject acForm, "IssueDetail"
End Sub
答案 1 :(得分:0)
在执行此操作之前,请备份数据库。您可以通过关闭数据库,然后在计算机上找到.accdb文件,然后按Ctrl + C和Ctrl + V
来执行此操作。您可以像这样进行自己的拆分:
您的新数据库现在已经链接了#34;到旧数据库的表,但所有表单,报表等都在新数据库中。
答案 2 :(得分:0)
如果要拆分Access DB,则必须将TABLES与其他所有内容分开。 查询,宏,表单,报告和VBA代码必须保留在前端,而后端只有表。
您缺少的是从前端到后端表的链接。 为此,您需要创建数据库的副本,将其重命名为“BE.mdb”(或accdb),删除除BE.mdb中的表之外的所有对象。 现在在原始mdb上,您需要删除每个表并将每个已删除表的链接添加到BE.mdb对应表。这可以从“导入”菜单中选择“链接表”而不是“导入表”。