gpt4 book ai didi

vba - 如何删除由于 MS Access 中的错误而创建的表单的孤立代码隐藏模块

转载 作者:行者123 更新时间:2023-12-05 04:15:55 25 4
gpt4 key购买 nike

这花了我一段时间才找到解决方案,而且我在网上找不到任何相关信息,所以我在这里分享。这是问题(错误):

在 MS Access(2013 和可能是以前的版本)中,当您创建一个新表单时,并在保存表单并为其命名之前在其后面添加一些 VBA 代码,有时当事情变得困惑时,代码隐藏的名称模块不更新以反射(reflect)新名称,导致表单和 VBA 代码断开连接。

例如,您创建了一个临时命名为 Form1 的新表单。您将其 Has Module 属性设置为 Yes,这会在 Microsoft Access Class Objects 中创建一个 Form_Form1 模块。然后你在记得保存表单之前搞砸了其他事情,给它命名为 MyForm 一段时间后你会遇到这个错误:

The form name 'Form1' is misspelled or refers to a form that doesn't exist.

Form_Form1 模块没有重命名,即使您删除 MyForm 也会保留在那里。

我尝试创建一个新表单,将其保存为 Form1 然后将其 Has Module 属性设置为 Yes 但不幸的是这最后一步给出了给出一个错误。

最佳答案

  • 备份您的数据库文件以防出现问题。然后打开它。
  • 在不保存的情况下创建新表单。假设它被命名为 Form2保存之前。
  • 将未保存的表单的 Has Module 属性设置为 Yes。然后保存表单并将其命名为与旧(已删除)表单相同的名称。
  • 现在将保存的表单的 Has Module 属性设置为 No 并确认删除后面的(孤立的)代码,然后再次保存。
  • 我们现在有另一个用于 Form2 的临时孤立代码隐藏模块,但令人惊讶的是这次我们可以轻松删除它:
  • 创建另一个新表单并将其保存为名称 Form2。设置其
    Module
    属性设置为 Yes(这次它可以工作,尽管有新的孤儿模块在那里!)并再次保存并关闭。
  • 现在删除 Form2 这也将删除临时模块和现在一切都应该没问题。

让我知道它是否也适合你:)

关于vba - 如何删除由于 MS Access 中的错误而创建的表单的孤立代码隐藏模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30002455/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com