2016-02-11 69 views
0

運行代碼時出現以下錯誤:dcount函數顯示錯誤數據類型不匹配

標準表達式中的數據類型不匹配。

我想檢查表tblMain存在與自動增量場標識記錄。

Dim myId as Long 
Dim tableName as string 

myId = 1145589 
tableName = "Main" 

注:以上部分只是展示一下這些變量類型和價值的。他們在我的代碼中並沒有像這樣呈現。

If Not DCount("Id", "tbl" & tableName, "Id='" & myId & "'") = 1 Then 
    Err.Raise 540, "This record does not exist." 
End If 

我試圖運行下面的查詢,這是罰款:

SELECT Count(Id) FROM tblMain WHERE Id = 1145589 

什麼是錯的代碼?

回答

2

長不得引用:

If Not DCount("*", "tbl" & tableName, "Id=" & myId & "") = 1 Then 
    Err.Raise 540, "This record does not exist." 
End If 
2

您對您的身份識別碼變單蜱,而是讓你不需要它們是數字。

"Id='" & myId & "'" 

應該

"Id=" & myId 

下面是完整的更新代碼:

If Not DCount("Id", "tbl" & tableName, "Id=" & myId) = 1 Then 
    Err.Raise 540, "This record does not exist." 
End If