Accessで残高計算⑤~DSUM関数を使わない方法4

Pocket

クエリを設定した上で、再度ADOのコードを確認します。
全コードはこちらを参照して下さい。

rs.Open “出納帳”, cnn, adOpenKeyset, adLockOptimistic
→出納帳テーブルを操作します。
rs.MoveFirst
→出納帳テーブルの一番最初のデータに移動します。
Do Until rs.EOF
→出納帳テーブルの最後のデータまでLOOPまでの処理を繰り返します。
a = DLookup(“前行残高”, “連番集計”, “ID=” & rs!ID & “”)
→aという変数に連番集計クエリの各レコードの前行残高を代入します。
2801101
On Error Resume Next
rs!残高 = a + rs!借方金額 – rs!貸方金額
rs.Update
→そのIDの前行残高にそのIDの借方金額を足し、貸方金額を引き、出納帳テーブルの
残高フィールドにその値を入れます。
On Error GoTo 0
rs.MoveNext
→次のレコードに移動します。
Loop
こんな感じです。
例えば1/6に3000円の出金取引を入れます。
2801102
この状態で、更新をクリックすると残高が更新されます。
2801103

データを追加する都度この処理が必要ですが、ただ出納帳を確認するだけなら
残高を計算する必要がないので、サッと開きます。
出納帳レベルだと、だから何?と思うかもしれませんが、販売管理ソフトの
得意先元帳位に複雑になると、この違いは歴然です。

Accessで残高を計算することは正直非常に面倒です。私も何度も壁にぶつかり
ましたが、やはり残高を計算できないとなにかと不便です。
最初はDSUM関数でも構いません。是非ものにして下さい。

==================================
今週のエコノミストで税理士がこの先喰えないという特集がありました。
少し読んでみましたが、それ知ってるという内容でした。
税理士には中小企業をIT化するというフィールドが残っています。
全然悲観する必要はありません。どんどん切り開いていきましょう!

本日も最後までお読み頂きありがとうございます。