MS Access中的错误编译错误

时间:2015-12-01 17:41:10

标签: ms-access access-vba

我的数据库应用程序发生了一些事情,突然之间,编译错误没有意义。我已经尝试修复甚至将对象带入另一个新数据库。这是一个例子:

Private Sub cmbCumulateOBS_AfterUpdate()
   Select Case Me.cmbCumulateCOMMITS
    Case "OCT"
        Me.txtOCT_O = Me.txtOBS_Start
        Me.txtNOV_O = Me.txtOBS_Start * 2
        Me.txtDEC_O = Me.txtOBS_Start * 3
        Me.txtJAN_O = Me.txtOBS_Start * 4
        Me.txtFEB_O = Me.txtOBS_Start * 5
        Me.txtMAR_O = Me.txtOBS_Start * 6
        Me.txtAPR_O = Me.txtOBS_Start * 7
        Me.txtMAY_O = Me.txtOBS_Start * 8
        Me.txtJUN_O = Me.txtOBS_Start * 9
        Me.txtJUL_O = Me.txtOBS_Start * 10
        Me.txtAUG_O = Me.txtOBS_Start * 11
        Me.txtSEP_O = Me.txtOBS_Start * 12
    Case "NOV"

...

我收到的错误是txtOBS_Start不存在 - 但它只对txtSEP_O实例不存在。怎么会这样?

我可以做些什么来让我的代码再次运行?

3 个答案:

答案 0 :(得分:1)

反编译可能有所帮助。请参阅David-W-Fenton的回答:

https://stackoverflow.com/a/3268188/3820271

并按照信函的步骤进行操作。

答案 1 :(得分:0)

如果这是一个糟糕的董事会礼仪,我道歉......这应该是一个评论而不是一个答案,但我似乎没有足够的董事会特权,而不是后者......

如果你注释掉明显有问题的一行

'Me.txtSEP_O = Me.txtOBS_Start * 12

有什么意外发生的事吗? (即你得到同样的错误,只有它现在在“AUG”行而不是“SEP”行)

或者是否所有编译都在没有那条单行的情况下按预期运行?

答案 2 :(得分:0)

感谢您的帮助。用户已经指出有意丢失了指向(SEPT_O)的字段txtOBS_start。所以错误是正确的。