【问题标题】:Problems implementing basic VBA in Access 2007在 Access 2007 中实现基本 VBA 的问题
【发布时间】:2012-07-02 18:49:09
【问题描述】:

我正在尝试为我的数据库编写一些代码,以便在查询的参数提示中启用一个下拉框,但它什么也没做,而是没有达到预期目的。这个:

Dropdown in Access 2007 parameter query

一直是我灵感的源泉。虽然我似乎连最基本的 VBA 代码都无法实现:

  Private Sub cmdReset_Click()
    Me.cboSelectName = Null
  End Sub

(是的,这不是我的全部代码!只是其中的一个)

在相关表单上,我有一个名为“cmdReset”的按钮,其中包含事件“On-Click”的“[Event Procedure]”。我在所述表单上还有一个名为“cboSelectName”的下拉框。我也试过关闭数据库,并确保在启动时启用宏。

所以本质上,当我单击重置按钮时,这段代码应该使下拉框中的值为空。但是它什么也不做,它只是取消选择下拉框。谁能帮我解决这个问题?我很想开始在我的数据库中实现一些 VBA!

【问题讨论】:

  • 点击Private Sub ...并点击F9。这设置了一个断点。运行您的表单并单击命令按钮,代码窗口是否打开?断点允许您找出到达该点的代码。
  • 您是否尝试过 Me.cboSelectName.Value = null 或 "" 代替?
  • @Scott VBA 中控件的默认属性是值。如果那是您的编码风格,您可以添加 .Value,但您不需要。
  • @Remou 你叫它,代码甚至没有运行。我发现了我的问题 - 我已将代码保存在一个新模块中,而不是在我的表单的 VBA 中。一旦我将代码转移到表单对象中,重置按钮就起作用了。由于命名问题,实际的“生成报告”命令遇到了一个错误,但我想我可以自己解决这个问题。感谢大家的帮助。
  • 嗨,andrewb 您可能想将其发布为答案,它可能对下一个人有用,因为您在写得很好的帖子中涵盖了大多数常见的嫌疑人。

标签: ms-access vba ms-access-2007


【解决方案1】:

正如 Remou 所建议的,代码甚至没有运行。我发现了我的问题 - 我已将代码保存在新模块中,而不是保存在表单的 VBA 代码中。一旦我将代码转移到表单对象中,重置按钮就起作用了。我现在也有一些漂亮的代码与实际的“生成报告”命令一起工作。 VBA 确实有能力将您的数据库提升到一个全新的水平!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-24
    • 2019-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多