I have the follow VBA code and it returns a 'data type mismatch in criteria expression' while executing. I cannot seem to find out why it is giving me this error.
Can anybody help me?
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 Query in MS Access
GezaagdeOmzet: Sum(GezaagdeOmzet([TotaalPrijs],[tbl_ArtikelsPerOrder]![Aantal],[Totaal],[tbl_ArtikelVerwijderdUitZaaglijst]![Aantal]))
Is there anyway to catch the error I'm getting with VBA?
Cstr or CDec or CDbl is not handling this error.