Database MS Access 2013这些代码有什么问题?
我在网上找到了这些代码,并把它们写在表格上。它似乎工作得很好,除了一件事:它一直告诉我你把一个错误的表达。。。如果默认情况下我不进行计算,则该字段将从其他两个字段自动计算。请有人告诉我代码出了什么问题?谢谢Database MS Access 2013这些代码有什么问题?,database,forms,codeigniter,relational-database,ms-access-2013,Database,Forms,Codeigniter,Relational Database,Ms Access 2013,我在网上找到了这些代码,并把它们写在表格上。它似乎工作得很好,除了一件事:它一直告诉我你把一个错误的表达。。。如果默认情况下我不进行计算,则该字段将从其他两个字段自动计算。请有人告诉我代码出了什么问题?谢谢 Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Dim varNewValue As Variant Dim strErr As String On Error GoTo SkipO
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Dim varNewValue As Variant
Dim strErr As String
On Error GoTo SkipOut
' to use the '=' use this line
'If KeyCode = 187 And Shift = 0 Then
'To use the Enter Key (my favorite) use this line
If KeyCode = 13 And Shift = 0 Then
If Me.ActiveControl.ControlType = acTextBox Then
If Me.ActiveControl.DecimalPlaces <> 255 Then
varNewValue = Eval(Me.ActiveControl.Text)
Me.ActiveControl.Text = varNewValue
KeyCode = 9
End If
End If
End If
Exit Sub
SkipOut: strErr = Error(Err)
On Error Resume Next
KeyCode = 9
MsgBox Left(strErr, InStr(strErr & "@", "@") - 1)
Exit Sub
End Sub
完整的错误信息和它发生的线路的任何指示都会很有帮助。帮助找到线路。注释掉错误GoTo SkipOut行,在其前面加一个“1”。我这样做了,结果弄得一团糟:运行时错误2438,您输入的表达式包含无效语法。如果我没有将“before”放在Error GoTo SkipOut行上,那么我会得到一个错误提示:您输入的表达式包含无效语法,没有运行时部分。我确信这是一个提示,但您需要它来查看错误的实际内容和位置。没有这些,你只能说“我有个问题”。你没有说错误在哪一行。我猜这是Eval行,Me.ActiveControl.Text的内容是无效的表达式。我应该如何处理这一Eval行?我试图删除该行,但该字段不累加,默认情况下,该字段来自以下内容:“私人子订单\数量\更新后的我。订单\金额=RoundMe.Order\数量*我。产品\价格结束子”