設為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

12下一頁
返回列表 發(fā)新帖
查看: 8170|回復: 13
打印 上一主題 下一主題

[模塊/函數(shù)] 分級分類自動往上級統(tǒng)計

[復制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2011-10-11 10:56:53 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
會計統(tǒng)計中多數(shù)是末級才輸入數(shù)據(jù),上級是自動累計的。
需要的網(wǎng)友可以來探討一下。
  1. Public Function GetTotal(strNo As String, curAccount As Currency) As Currency

  2.     Dim rs As New ADODB.Recordset
  3.     Dim cnn As New ADODB.Connection
  4.     Dim strSQL As String
  5.     Dim intQ As Integer
  6.     Dim curTemp As Currency
  7.     On Error GoTo GetTotal_Error

  8.     Set cnn = CurrentProject.Connection

  9.     intQ = Len(strNo)

  10.     If curAccount <> 0 Or intQ = 8 Then        '說明其為末級
  11.         GetTotal = curAccount        '無需累加
  12.         Exit Function
  13.     ElseIf intQ = 6 Then
  14.         strSQL = "SELECT 金額 FROM 科目表 WHERE LEFT(代碼,6)='" & strNo & "'"
  15.     ElseIf intQ = 4 Then
  16.         strSQL = "SELECT 金額 FROM 科目表 WHERE LEFT(代碼,4)='" & strNo & "'"
  17.     Else
  18.         MsgBox "此函數(shù)只能適應三級統(tǒng)計"
  19.         Exit Function
  20.     End If

  21.     rs.Open strSQL, cnn, adOpenKeyset, adLockOptimistic

  22.     Do While Not rs.EOF
  23.         curTemp = curTemp + rs.Fields(0)
  24.         rs.MoveNext
  25.     Loop

  26.     GetTotal = curTemp

  27.     rs.Close
  28.     Set rs = Nothing
  29.     Set cnn = Nothing

  30.     On Error GoTo 0
  31.     Exit Function

  32. GetTotal_Error:

  33.     MsgBox "Error " & Err.Number & " (" & Err.Description & ")"
  34. End Function
復制代碼



本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號?注冊

x
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享分享 分享淘帖 訂閱訂閱
2#
發(fā)表于 2011-10-11 11:06:35 | 只看該作者
謝謝分享

點擊這里給我發(fā)消息

3#
發(fā)表于 2011-10-11 12:35:46 | 只看該作者
謝謝技巧分享!
4#
發(fā)表于 2011-10-12 10:05:37 | 只看該作者
謝謝分享
收藏了

點擊這里給我發(fā)消息

5#
發(fā)表于 2011-10-12 15:10:28 | 只看該作者
用DSum是不是也可以,還不受級次限制。
  1. SELECT 科目表.代碼, 科目表.名稱, DSum("[金額]","[科目表]","[代碼] Like '" & [代碼] & "*'") AS 匯總
  2. FROM 科目表;
復制代碼
6#
 樓主| 發(fā)表于 2011-10-12 16:16:43 | 只看該作者
輕風 發(fā)表于 2011-10-12 15:10
用DSum是不是也可以,還不受級次限制。

謝謝輕風兄提醒!
7#
發(fā)表于 2015-9-30 17:38:30 | 只看該作者
感謝分享
回復

使用道具 舉報

點擊這里給我發(fā)消息

8#
發(fā)表于 2015-11-4 13:13:24 | 只看該作者
太有才了
回復

使用道具 舉報

9#
發(fā)表于 2015-11-9 22:26:24 | 只看該作者
高手
回復

使用道具 舉報

10#
發(fā)表于 2021-8-30 22:13:54 | 只看該作者
123546
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2025-7-13 05:15 , Processed in 0.093262 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表