MS Access 中 VBA 代码与宏的优缺点是啥?
Posted
技术标签:
【中文标题】MS Access 中 VBA 代码与宏的优缺点是啥?【英文标题】:What are the Pros and Cons of VBA Code vs Macros in MS Access?MS Access 中 VBA 代码与宏的优缺点是什么? 【发布时间】:2014-02-21 13:39:32 【问题描述】:我一直在研究数据库,并希望使用纯 VBA 代码来完成它。但是,一位朋友告诉我,使用宏对我来说更安全,因为数据库将在本地网络上使用。我对宏的使用不是很精通,但如果它对数据库有更好的方法,那么让我知道它的优缺点。如果我决定稍后将数据库迁移到 sql 会有问题。我做的第一个数据库在旧版本的访问中产生了错误,这使我倾向于使用 VBA。我知道这个问题听起来很复杂,但我基本上只是想要一些关于 VBA 与宏在访问中的优缺点的指导。
【问题讨论】:
【参考方案1】: 宏被认为更容易学习。 在大多数情况下,创建宏可能比编写 VBA 代码更快。 可以在 Access Web 应用程序中使用宏,这些应用程序发布在 共享点服务器。 VBA 不能。 VBA 比 VBA 更强大、更灵活 宏。您可以进行 API 调用、读取和写入文本文件、访问 使用 ADO 的其他数据库或数据存储,运行 DAO 循环 记录,并编写许多其他复杂的功能。 关于安全性,我认为没有一个比另一个更安全。使用 ADO 和传递查询是构建 Access 数据库应用程序的更安全的方法之一,因为您不需要使用链接表并且可以使用存储过程(如果使用 SQL Server)。使用宏无法做到这一点。在我从事过的大多数更专业的 Access 应用程序(不是 Web 应用程序)中,我们只使用了一个宏,它被命名为 AutoExec。当您创建一个宏并将其命名为 AutoExec 时,它将首先运行(甚至在您设置为主窗体的窗体之前)。该宏通常用于隐藏 UI 元素、建立连接字符串、链接表和弹出登录表单等操作,其中大部分可能必须通过从宏中调用 VBA 函数来完成。
【讨论】:
关于我可以在这篇精彩文章中添加的唯一内容是,宏也是 Access 2010 及更高版本中可用的新表触发器和存储过程的编码语言。【参考方案2】:宏具有一些无需代码的内置功能,此外,您还可以使用宏更快地构建功能。例如,如果我想打开一个数据库并运行 10 个 Create Table 查询,我只需单击几下就可以创建一个宏来执行此操作。我可以用 VBA 做同样的事情,但它需要更长的时间并且需要更好的 VBA 工作知识。我不知道宏可以做而 VBA 代码不能做的单个操作。
【讨论】:
【参考方案3】:您可以从 VBA 获得更多功能,包括创建登录结构和逻辑。您还可以使用密码锁定您的 VBA 项目,这样您的源代码也不会被看到......
【讨论】:
以上是关于MS Access 中 VBA 代码与宏的优缺点是啥?的主要内容,如果未能解决你的问题,请参考以下文章