我有下面的VBA代碼,它在執行時返回標準表達式'中的'數據類型不匹配。我似乎無法找出它爲什麼給我這個錯誤。MS Access - 數據類型不匹配
任何人都可以幫助我嗎?
VBA:
Public Function GezaagdeOmzet(ByVal TotaalPrijs As Double, ByVal AantalArtiklesPerOrder As Double, ByVal TotaalArtiklesPerOrder As Double, ByVal AantalArtiklesVerwijderedUitZaaglijst As Double) As Double
Dim result As Double
On Error GoTo ErrHandler
If IsNumeric(TotaalPrijs) = False Then
MsgBox ("TotaalPrijs not a number")
MsgBox (TotaalPrijs)
End If
If IsNumeric(AantalArtiklesPerOrder) = False Then
MsgBox ("AantalArtiklesPerOrder not a number")
MsgBox (AantalArtiklesPerOrder)
End If
If IsNumeric(TotaalArtiklesPerOrder) = False Then
MsgBox ("TotaalArtiklesPerOrder not a number")
MsgBox (TotaalArtiklesPerOrder)
End If
If IsNumeric(AantalArtiklesVerwijderedUitZaaglijst) = False Then
MsgBox ("AantalArtiklesVerwijderedUitZaaglijst not a number")
MsgBox (AantalArtiklesVerwijderedUitZaaglijst)
End If
If Not TotaalPrijs = 0 Then
If AantalArtiklesPerOrder > 0 Then
result = TotaalPrijs/(AantalArtiklesPerOrder * TotaalArtiklesPerOrder) * AantalArtiklesVerwijderedUitZaaglijst
On Error GoTo ErrHandler
Else
MsgBox ("AantalArtiklesPerOrder is null, Cannot do calculation")
End If
Else
MsgBox ("TotaalPrijs is null, cannot do division")
End If
Exit Function
ErrHandler:
MsgBox ("TotaalPrijs: " & TotaalPrijs & " TotaalArtiklesPerOrder: " & TotaalArtiklesPerOrder & " AantalArtiklesPerOrder: " & AantalArtiklesPerOrder & " AantalArtiklesVerwijderedUitZaaglijst: " & AantalArtiklesVerwijderedUitZaaglijst)
End Function
SQL查詢在MS Access
GezaagdeOmzet: Sum(GezaagdeOmzet([TotaalPrijs],[tbl_ArtikelsPerOrder]![Aantal],[Totaal],[tbl_ArtikelVerwijderdUitZaaglijst]![Aantal]))
反正是有趕上我用VBA得到錯誤?
Cstr或CDec或CDbl不處理此錯誤。
感謝Remou,但是在查詢中運行時,我被這個函數返回的一些字段中的奇怪'#Error'卡住了? – 2010-01-12 14:21:01
如果您將空值傳遞給您的函數,那麼您將得到一個錯誤,我認爲您是錯誤的。 – Fionnuala 2010-01-12 14:25:31
那麼如何解決這些空值?有沒有辦法避開? – 2010-01-12 14:30:26