首页 > 解决方案 > 由于数据类型不匹配导致的编码问题

问题描述

我面临运行时错误 3464

此代码适用于某些数据类型。当它遇到像引擎启动日期这样的数据格式的值时,它会显示运行时错误。

Public Function SearchForID(strTableToSearch As String, strColumnNameToSearch As String, strNewItemName As String) As Integer

    'Varialbes
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim StrValue As String

    'Assigning Database to the Variable db
    Set db = CurrentDb
    'Creating a Query to the Recordset
    Set rs = db.OpenRecordset("SELECT * FROM " & strTableToSearch & " WHERE " & strColumnNameToSearch & " = '" & strNewItemName & "'")
    'We need to check for the valid record set
    rs.FindFirst ("[" & strColumnNameToSearch & "] = '" & strNewItemName & "'")

    If rs.NoMatch Then
       SearchForID = 0
    'If the recordset exists
    Else
    'Returning the ID value to StrValue
        SearchForID = rs.Fields(0)

    End If

    rs.Close
    Set rs = Nothing
    Set db = Nothing

End Function

我希望对所有数据类型执行代码

标签: vbams-access

解决方案


推荐阅读