MS Access 不需要的断点
MS Access unwanted BreakPoint
我有一个包含数十个表单的复杂 MS Access 2013 数据库。在其中一个表单上,我有一个带有 vba 过程的按钮返回它,returns 来自 MS SQL(ADODB) 的值并将它们放入文本框。
问题是,每当我点击这个按钮时,它都会进入编译菜单,好像有breakpoint
,但实际上没有breakpoint
。当然没有错误/MsgBoxes,如果我只是点击 F5
或 F8
,一切顺利。
有没有人有想法,可能有什么问题?
通常可以通过将停止代码执行的行复制到记事本中来修复幻象断点。然后从 VBEditor 中删除该行并从记事本中重新插入。
如果这不起作用,请尝试反编译数据库:
打开cmd并输入以下内容:
<full path to your database> /decompile
示例:
C:\testDB.accdb /decompile
其实你可以从剪贴板重新粘贴它,你不需要使用记事本。但不要将其粘贴回同一行。删除坏线。
虚拟断点不会随着重启而消失。
此问题已存在多年,但 MS 仍未解决。烦人!
幻影断点再次来袭:(
它以如此奇怪的方式出现,我觉得不得不 post 它在某个地方。这似乎是最明显的地方,但我很高兴将这些评论移到其他地方。
我的 Access 2010 ACCDE 给了我同样的错误:"Requested type library or wizard is not a VBA project" 当我单击主导航窗体上的按钮时。我尝试了一个具有相同引用和完全相同代码(在导航表单和与按钮相关的其他区域)的早期版本并且它工作正常。但是,当我打开用于构建 "bad" ACCDE 的 ACCDB 并单击相同的按钮时,我得到一个不同的错误:错误 16 - "Expression too complex".
我通过注释掉导航表单中相关的 VBA 行并在原始行下方复制未注释的代码来解决此问题。
最奇怪的是,直到经过几次调试会话后,它才开始像上面的原始 posting 那样运行,它会中断到不可见的断点。之前显示了上面的误导性错误。
我现在的标准做法是在所有开发会话之后使用“清除所有断点”(在“调试”菜单下)。希望将来能防止这种情况发生。
据我所知,幻影断点问题一直是几个版本的问题。在那之间,以及代码 window 仅通过浮动在其上激活的新事物 - 即使你不点击那个 window - 我不确定我是否能再忍受“改进”。该死的程序 运行 大约 3 个版本前非常好!老实说,他们添加了新的“绒毛” - 报告 lines-or 表格中其他数据的替代颜色 - 我不使用任何这些,并且在我不想要时花更多时间取消替代线条颜色!
修复更多错误,花更少的时间在新功能上!!!
引用的 accdb 代码库中的幽灵断点!
有一个非常相似的问题。启动应用程序时,它会停止以黄色突出显示一行。不幸的是,突出显示的行位于引用的 accdb 库中,用于我在不同数据库之间共享的附加代码。其他数据库仍然可以使用相同的代码部分正常工作。删除 ghost 断点行没有帮助(引用无论如何都是只读的),因此,问题的根源应该在调用数据库的代码中,而不是调用遇到 ghost 断点的地方。
然后切换参考,当然是保存并重新启动,停止了 ghost 断点。
以防万一有人遇到与引用代码相关的相同问题。
我有一个包含数十个表单的复杂 MS Access 2013 数据库。在其中一个表单上,我有一个带有 vba 过程的按钮返回它,returns 来自 MS SQL(ADODB) 的值并将它们放入文本框。
问题是,每当我点击这个按钮时,它都会进入编译菜单,好像有breakpoint
,但实际上没有breakpoint
。当然没有错误/MsgBoxes,如果我只是点击 F5
或 F8
,一切顺利。
有没有人有想法,可能有什么问题?
通常可以通过将停止代码执行的行复制到记事本中来修复幻象断点。然后从 VBEditor 中删除该行并从记事本中重新插入。
如果这不起作用,请尝试反编译数据库:
打开cmd并输入以下内容:
<full path to your database> /decompile
示例:
C:\testDB.accdb /decompile
其实你可以从剪贴板重新粘贴它,你不需要使用记事本。但不要将其粘贴回同一行。删除坏线。
虚拟断点不会随着重启而消失。
此问题已存在多年,但 MS 仍未解决。烦人!
幻影断点再次来袭:(
它以如此奇怪的方式出现,我觉得不得不 post 它在某个地方。这似乎是最明显的地方,但我很高兴将这些评论移到其他地方。
我的 Access 2010 ACCDE 给了我同样的错误:"Requested type library or wizard is not a VBA project" 当我单击主导航窗体上的按钮时。我尝试了一个具有相同引用和完全相同代码(在导航表单和与按钮相关的其他区域)的早期版本并且它工作正常。但是,当我打开用于构建 "bad" ACCDE 的 ACCDB 并单击相同的按钮时,我得到一个不同的错误:错误 16 - "Expression too complex".
我通过注释掉导航表单中相关的 VBA 行并在原始行下方复制未注释的代码来解决此问题。
最奇怪的是,直到经过几次调试会话后,它才开始像上面的原始 posting 那样运行,它会中断到不可见的断点。之前显示了上面的误导性错误。
我现在的标准做法是在所有开发会话之后使用“清除所有断点”(在“调试”菜单下)。希望将来能防止这种情况发生。
据我所知,幻影断点问题一直是几个版本的问题。在那之间,以及代码 window 仅通过浮动在其上激活的新事物 - 即使你不点击那个 window - 我不确定我是否能再忍受“改进”。该死的程序 运行 大约 3 个版本前非常好!老实说,他们添加了新的“绒毛” - 报告 lines-or 表格中其他数据的替代颜色 - 我不使用任何这些,并且在我不想要时花更多时间取消替代线条颜色!
修复更多错误,花更少的时间在新功能上!!!
引用的 accdb 代码库中的幽灵断点! 有一个非常相似的问题。启动应用程序时,它会停止以黄色突出显示一行。不幸的是,突出显示的行位于引用的 accdb 库中,用于我在不同数据库之间共享的附加代码。其他数据库仍然可以使用相同的代码部分正常工作。删除 ghost 断点行没有帮助(引用无论如何都是只读的),因此,问题的根源应该在调用数据库的代码中,而不是调用遇到 ghost 断点的地方。 然后切换参考,当然是保存并重新启动,停止了 ghost 断点。 以防万一有人遇到与引用代码相关的相同问题。