提出问题提出问题
 

已答复DSum Errors On Some Machines

  • 2009年7月7日 23:49Fogie 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
         I have a form which uses many DSum calls.  This form works fine on my machine (XP Home, Access 2003), and on my test machine (Win. 2000, Office 2000) but gives only #Error on another machine (XP Pro, Access 2000).  The .mdb file was copied directly to the offending machine, so all data, table structure and code are the same.

        Any ideas on where I should look to find out why?
    The early worm gets the bird

答案

  • 2009年7月9日 5:18BrijrajRathod 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复
    use below code,

    use nz to avoid headache of null value.

    IIf(DSum("nz( [Admin Cost],0 )","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10")>0,DSum("nz( [Admin Cost],0) ","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10"),0)
    Rgrds, Brij http://accessvbadeveloper.wordpress.com

全部回复

  • 2009年7月8日 11:16BrijrajRathod 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    Hi,

    Please provide some more information about your code using DSum and #Error. Thanks

    Rgrds, Brij http://accessvbadeveloper.wordpress.com
  • 2009年7月8日 14:30Fogie 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    Ok - thanks for answering.

    The form is 7 X 12 textboxes.  The code from one of the boxes is:

    =IIf(DSum("[Admin Cost]","[Temporary Expenditures Table]","Month([E Date])=10")>0,DSum("[Admin Cost]","[Temporary Expenditures Table]","Month([E Date])=10"),0)

    When the form is run on the customer's machine all that appears in any of the boxes is "#Error".  The customer's machine is running Access 2000 with Windows XP Pro and the .mdb file is on a server with the offending machine linked to it.  Other forms worked, so I don't think it is a connection issue.

    The table does have nulls in it, but the code ignores the nulls on the two test machines.

    The early worm gets the bird
  • 2009年7月9日 5:18BrijrajRathod 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复
    use below code,

    use nz to avoid headache of null value.

    IIf(DSum("nz( [Admin Cost],0 )","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10")>0,DSum("nz( [Admin Cost],0) ","[Temporary Expenditures Table]","Month(nz( [E Date],0) )=10"),0)
    Rgrds, Brij http://accessvbadeveloper.wordpress.com
  • 2009年7月9日 14:58Fogie 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    I had not heard of the nz function, but that might be it.  I will try it.  Thanks.
    The early worm gets the bird