Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

DAO查询中计算累计余额

半夜罗  发表于:2019-03-24 11:28:34  
复制

请各位老师能帮助下吗,谢谢!

我想写个动态余额累计函数,适用于不同的数据源,只管调用即可。这是我的原码:

Function ljuy(bmc As String, fzzd As String, lsh As Double, jf As Double, df As Double) As Double
'bmc:表名称 _
  fzzd:分组字段 _
  lsh:序号字段 _
  jf:借方 _
  df:贷方 _
  调用:ljuy("表名称","分组字段名称",[序号排序字段名称],[借方字段名称],[贷方字段名称])
    On Error GoTo Err
    Dim rst As Object
    Dim ye As Double
    Dim a As String
    Dim strSQL As String
    strSQL = "SELECT * FROM [往来单据] ORDER BY 往来代码,顺序号"
    Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
    rst.MoveFirst


    a = rst!往来代码
    Do Until rst.EOF = True
        If a <> rst!往来代码 Then
            a = rst!往来代码
            ye = 0
        End If
        If lsh = rst!顺序号 Then
            ye = ye + Nz(rst!借方金额) - Nz(rst!贷方金额)
            ljuy = ye
            Exit Do
        ElseIf lsh <> rst!顺序号 Then
            ye = ye + Nz(rst!借方金额) - Nz(rst!贷方金额)
        End If
        rst.MoveNext
    Loop
    rst.Close
    Set rst = Nothing


Exit_ERR:
    Exit Function


Err:
    MsgBox Err.Description
    Resume Exit_ERR
End Function

请老师们能帮忙修改吗,谢谢!!

 

Top
总记录:0篇  页次:0/0 9 1 :