MS Access 复制按钮

Posted

技术标签:

【中文标题】MS Access 复制按钮【英文标题】:MS Access Copying a Button 【发布时间】:2017-11-28 09:37:31 【问题描述】:

我有一系列表单,我想在每个表单上添加一个后退按钮,因此我创建了一个命令按钮并分配给它的 on click 事件触发以下 VBA;

Private Sub cmdBack_Click()
On Error GoTo Err_CmdBack_Click

    If Me.Dirty Then Me.Dirty = False
    DoCmd.Close

Exit_CmdBack_Click:
    Exit Sub

Err_CmdBack_Click:
    MsgBox Err.Description
    Resume Exit_CmdBack_Click

End Sub

我现在如何或最好的方法是将此按钮复制到带有代码的所有其他表单?如果我只是复制和粘贴,我会丢失代码,我不想为每个看起来效率低下的按钮重新编写代码。

【问题讨论】:

但这就是你必须做的:复制按钮,复制代码。 @Gustav 但是嵌入式宏呢?我以前用过,但我不知道如何将 VBA 更改为其中之一。那么写一次assign many呢? 你不会想要的。使用这些,将调试变成潜在的噩梦。 【参考方案1】:

有很多方法可以在 Access 中的表单中实现代码可重用性。

对于这个例子,你可以简单地在一个单独的模块中使用一个函数,并将按钮绑定到那个:

Public Function formBack()
On Error GoTo Err_CmdBack_Click

    If Screen.ActiveForm.Dirty Then Screen.ActiveForm.Dirty = False
    DoCmd.Close

Exit_CmdBack_Click:
    Exit Function

Err_CmdBack_Click:
    MsgBox Err.Description
    Resume Exit_CmdBack_Click
End Function

(如果您在表单上按下按钮,它始终是活动表单)。

您可以通过将按钮的On Click 属性设置为=formBack() 来将按钮绑定到此函数

有其他方法可以重用代码。 This question 有一些不错的答案,展示了一些更复杂的答案。

【讨论】:

以上是关于MS Access 复制按钮的主要内容,如果未能解决你的问题,请参考以下文章

在 MS Access DB 中创建临时表

将查询从 SQL 服务器复制到 MS Access

如何使用 Python 单击 MS Access 上的按钮

使用 Python 将数据从 MS Access 复制到 MS Excel

MS Access:将报告另存为 PDF 的命令按钮

将表从 SQL Server 2008 复制到 MS Access 2007