Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 运行时错误';13';类型不匹配-ACCESS数据库_Sql_Vba_Ms Access - Fatal编程技术网

Sql 运行时错误';13';类型不匹配-ACCESS数据库

Sql 运行时错误';13';类型不匹配-ACCESS数据库,sql,vba,ms-access,Sql,Vba,Ms Access,我试图将两个文本字段txtTrailerNumber和txtSealNumber与数据库表选项卡_TrailerDetails进行比较。表中列出的[TrailerNumber]和[SealNumber] 我试图让数据库查看表单中输入的拖车编号,如果发现重复值,则查看表单中输入的密封编号。如果在表中发现两个值都有重复项,则应抛出Msg_框错误代码 Private Sub txtSealNumber_AfterUpdate() Dim NewTrailer, NewSeal As String D

我试图将两个文本字段txtTrailerNumber和txtSealNumber与数据库表选项卡_TrailerDetails进行比较。表中列出的[TrailerNumber]和[SealNumber]

我试图让数据库查看表单中输入的拖车编号,如果发现重复值,则查看表单中输入的密封编号。如果在表中发现两个值都有重复项,则应抛出Msg_框错误代码

Private Sub txtSealNumber_AfterUpdate()

Dim NewTrailer, NewSeal As String
Dim stLinkCriteria As String


'Assign the entered Trailer Number and Seal Number to a variable
NewTrailer = Me.txtTrailerNumber.Value
NewSeal = Me.txtSealNumber.Value

stLinkCriteria = ("[TrailerNumber]='" & NewTrailer & "'" And "[SealNumber]='" & NewSeal & "'")

If Me.txtTrailerNumber = DLookup("[TrailerNumber]", "Tab_TrailerDetails", stLinkCriteria) Then

   MsgBox "This trailer, " & NewTrailer & ", has already been entered in database," _
              & vbCr & vbCr & "along with seal " & NewSeal & "" _
              & vbCr & vbCr & "Please make sure Trailer and Seal are not already entered.", vbInformation, "Duplicate information"
     
'undo the process and clear all fields
    Me.Undo
    

End If

End Sub

错误的原因是您在字符串表达式中有一个逻辑关键字,特别是
。将代码更改为

stLinkCriteria = ("[TrailerNumber]='" & NewTrailer & "' And [SealNumber]='" & NewSeal & "'")

运行时错误-13不匹配是在表单中输入信息时出现的错误。即使该信息在数据库中根本没有匹配项。在以NewTrailer=开头的行上划一个分隔符,然后一次跨一行,并告诉我们错误发生在哪一行。这太神奇了!非常感谢,它工作得很好。。你不知道我盯着这段代码看了多长时间,并尝试了不同的方法来让它工作@约瑟夫我很高兴问题解决了。