MS Access不需要的BreakPoint

时间:2016-09-08 13:03:50

标签: vba ms-access access-vba ms-access-2013

我有一个包含数十种表单的复杂MS Access 2013数据库。在其中一个表单上,我有一个带有vba过程的按钮,它返回来自MS SQL(ADODB)的值并将它们放入文本框中。

问题是,无论何时单击此按钮,它都会进入编译菜单,就像有breakpoint一样,但实际上没有breakpoint。当然没有错误/ MsgBoxes,如果我只点击F5F8,它就会顺利进行。 有谁有想法,可能有什么不对?

6 个答案:

答案 0 :(得分:4)

幻像断点通常可以通过将停止代码执行的行复制到记事本中来修复。然后从VBEditor中删除该行并再次从记事本中插入。

如果这不起作用,请尝试反编译数据库:

打开cmd并输入以下内容:

<full path to your database> /decompile

示例:

C:\testDB.accdb /decompile

答案 1 :(得分:0)

实际上你可以从剪贴板上重新粘贴它,你不需要使用记事本。但是不要将它粘贴回同一行。删除坏行。

幻像断点不会因重启而消失。

这个问题已存在多年,但MS不会解决这个问题。讨厌!

答案 2 :(得分:0)

幻影断点再次出现:(

它以一种奇怪的方式出现,以至于我不得不将其张贴在某个地方。这似乎是最明显的地方,但我很高兴将这些评论适当地移到其他地方。

当我单击主导航窗体上的按钮时,我有一个Access 2010 ACCDE,给我同样的错误:“请求的类型库或向导不是VBA项目”。我尝试使用相同的引用和完全相同的代码(在nav表单和其他与按钮有关的区域中)的更早版本,并且工作正常。但是,当我打开用于构建“不良” ACCDE的ACCDB并单击相同的按钮时,会收到另一个错误:错误16-“表达式过于复杂”。

我通过用nav格式注释了关联的VBA行并在原始行下面复制了未注释的代码来解决了该问题。

最奇怪的部分是,直到经过几次调试会话之后,它才开始像上面的原始文章那样工作,在那里它会断裂到看不见的断点。在此之前,它显示了上面的误导性错误。

我现在的标准做法是在所有开发会话之后使用“清除所有断点”(在“调试”菜单下)。希望将来能避免这种情况。

答案 3 :(得分:0)

幻觉断点一直是我记得的几个版本的问题。在这之间,以及代码窗口仅通过悬停在代码窗口上来激活的新事物(即使您没有单击该窗口),我不确定我是否还能忍受“改进”。该程序在3个版本之前运行得非常好!老实说,他们添加了新的“绒毛”-报表行上的替代颜色或表中的其他数据-我什么都不用,在我不想要的时候花更多的时间取消替代线的颜色!

修复更多的错误,并花费更少的时间在新功能上!

答案 4 :(得分:0)

引用的 accdb 代码库中的幽灵断点! 有一个非常相似的问题。在启动应用程序时,它停止以黄色突出显示一条线。不幸的是,突出显示的行位于引用的 accdb 库中,用于我在不同数据库之间共享的附加代码。其他数据库在代码的相同部分仍然可以正常工作。删除幽灵断点行没有帮助(无论如何,引用都是只读的),因此,问题的根源应该在调用数据库的代码中,而不是调用遇到幽灵断点的地方。 然后切换引用,当然通过保存和重启,停止了幽灵断点。 以防万一有人遇到与引用代码相关的相同问题。

答案 5 :(得分:-1)

有没有人注意到这个“幻影断点”问题,已经存在了20年或更长时间,微软从未在任何官方文档或任何自己的网站上直接解决过这个问题?我不知道他们的程序是否不足以解决问题,所以公司只是选择假装这个问题不存在。