カテゴリー別アーカイブ: Access(アクセス)

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

連番で日付順取引順で番号を付したら、あとは一つ前の番号の残高を取得する
だけです。

一つ前の残高を求める数式です。
前行残高: IIf([ID]=1,0,DLookUp(“残高”,”連番集計”,”連番=” & DMax(“連番”,”連番集計”,”連番<” & [連番] & “”)))

まず始めにIDが1→前行が存在しないときは前行の残高を0にします。
基本的には一行の目のレコードは繰越残高になるので、一行目の借方金額に繰越残高を
入れます。
続きを読む

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

一つ前のデータの残高が分かれば、その残高に借方金額を足して、貸方金額を
引けば残高が出てきます。理論的には非常に簡単ですが、実はこれをAccessで
実行しようとするものならば、ひと工夫ふた工夫が必要です。

2801081
Excelなら簡単に出来そうな図ですが・・
続きを読む

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

前回DSUM関数は集計に時間がかかると解説しました。

これはAccessで販売管理データベースを作った場合、日付の他に得意先毎
に集計をかけると如実に出ます。得意先元帳を開くたびに、毎回膨大な数の
データのDSUMの処理をするのですから・・

で、そうしないために、残高フィールドをテーブル入れて、そこにその行の残高
を入れていけば、一行目から毎回集計しなくても、テーブルにその行の残高が
入力されているので、集計する必要もなく残高が表示するようにします。
続きを読む

Accessで残高計算①~DSUM関数の欠点

通常Accessで残高計算をする場合、一番手っ取り早い方法は、DSUM関数を使うこと
ですが、この方法には致命的な欠点があります。

それは、集計に時間がかかること。
サンプルファイルを開いて、クエリの「DSUMで計算」を開いてもらえば分かりますが、
クエリが開くまでに時間がかかります。(PCのスペックによりますが・・)
私の今使っているPCはそこそこ古いので、どうしもその間が気になります。

データ量は正直非常に少ないのに、この間があるということはデータがもっと
増えた場合、集計が複雑になった場合、もっと時間がかかります。
続きを読む