If IsArray(objList(i).Amount) Then
  rs("Carriage").value = dblPrice * objList(i).Amount(1)其中dblPrice 和objList(i).Amount(1)都可能为NULL,该怎么改写这地方,让为空的赋为零?

解决方案 »

  1.   

    If IsArray(objList(i).Amount) Then
      rs("Carriage").value = iif(isnull(dblPrice),0,dblPrice) * iif(isnull(objList(i).Amount(1)),0,objList(i).Amount(1))
      

  2.   

    If IsArray(objList(i).Amount) Then
      rs("Carriage").value = dblPrice * objList(i).Amount(1)
    elseif dblprice*objlist(i).amount(1) then
    rs("carriage").value=0
    endif
      

  3.   

    If IsArray(objList(i).Amount) Then
      rs("Carriage").value = dblPrice * objList(i).Amount(1)
    elseif dblprice*objlist(i).amount(1)=0 then
    rs("carriage").value=0
    endif
      

  4.   

    rs("Carriage").value =cdbl("0" & dblPrice * objList(i).Amount(1))
      

  5.   

    sorry!
    应该是
    rs("Carriage").value =cdbl("0" & dblPrice) * cdbl("0" & objList(i).Amount(1))
      

  6.   

    on error goto 100
    If IsArray(objList(i).Amount) Then
      rs("Carriage").value = dblPrice * objList(i).Amount(1)
    ....
    exit sub
    100:
    rs("Carriage").value =0
      

  7.   

    虫莲?
    等于NULL的时候使用CDBL
    会出错吧!
      

  8.   

    不好意思!
    是虫子!
    你的方法当等于NULL的时候是会出错的!
    只有在等于“ ”空的时候可以自动转为0!
      

  9.   

    应该将小马的和虫子的结合起来用!
    rs("Carriage").value = iif(isnull(dblPrice),0,cdbl(dblPrice)) * iif(isnull(objList(i).Amount(1)),0,cdbl(objList(i).Amount(1)))
      

  10.   

    Private Sub Command1_Click()
        Dim x, y
        x = Null
        y = Null
        MsgBox CDbl("0" & x) * CDbl("0" & y)
    End Sub