找不到msgbox代码(已删除),但msgbox仍然出现

时间:2018-11-20 15:30:45

标签: access msgbox

我什至无法在网上找到任何遇到此问题的人,更不用说解决方案了!

我在编写一些VBA代码中有几个msgbox,以提供调试信息。一段时间后,代码稳定了,我注释掉了MsgBox行。

一组msgbox不会消失。我什至删除了它而不是删除了它。最后,我决定必须以某种方式进行复制,即使所有相关代码最终都调用了我删除MsgBox的特定功能。

我看不到任何其他解释,因为我确实删除了代码行。我在整个项目中搜索了组成MsgBox文本一部分的字符串片段。 Ctrl + F,设置为搜索整个项目,尝试使用模式匹配和不使用模式匹配。

我什么也没发现。我决定该字符串必须比我想象的要构造的多,并且每次我使用该命令时都选择使用“ MsgBox”进行搜索。我检查了每个项目文件中的每个MsgBox,甚至没有远程发现任何东西,就像代码仍在生成的调试消息一样。

任何人都有其他想法可能会发生什么?我最好的理论是,我以某种方式隐藏或重复了一些东西,但是除了贬低其代码不包含单个MsgBox或调用代码的表单之外,我没有想到导致这种情况的任何事情。 >

我将粘贴代码,但是您仍然会相信MsgBox不存在。

有人可以帮忙吗?它必须以某种方式藏在某个地方。

非常感谢,

MsgBox最初出现的代码(它基于RecordSet的NoMatch属性提供了反馈):

Public Function createRecordSnapshot(Table As String, dbRefIn As String, payNum As String)


Dim fieldNames As String
Dim oldDataSet As String
Dim rs As Recordset
Dim fieldCount As Integer
Dim recordTot As Integer
Dim srchString As String


Set rs = CurrentDb.OpenRecordset(Table, dbOpenDynaset)
srchString = "DBRef = '" & dbRefIn & "' and PayrollRef = '" & payNum & "'"
fieldCount = rs.Fields.Count
rs.FindFirst (srchString)
Dim o As Integer

For o = 0 To fieldCount - 1
    fieldNames = fieldNames & rs.Fields(o).Name & "|"
Next o

For o = 0 To fieldCount - 1
    oldDataSet = oldDataSet & rs.Fields(o).Value & "|"
Next o

createRecordSnapshot = fieldNames & vbNewLine & oldDataSet

End Function

1 个答案:

答案 0 :(得分:0)

修改后,最好手动重新编译代码,因为这样可以更快地运行代码(可以在下次运行时跳过编译)并刷新以前编译的代码。该选项位于VB编辑器的“调试”菜单中。