メールマガジン【アクセスで作るシリーズ】
バックナンバー 【会計ソフト編】 Vol.41
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
ACCESSで作るシリーズ 【会計ソフト編】
発 行 : Yoshihisa Fukuda 2001. 1.27 Vol.41
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
== ◇ 第4章 年度更新 ====================
今回は年度更新の元入金の集計サブルーチンの作成です。
--------------------------------------
4-1 年度更新
--------------------------------------
--------------------------------------
4-1-2 モジュール作成
--------------------------------------
元入金の集計サブルーチンを作成します。
【モジュール作成手順】
1.[モジュール]タブで前回作成した[CommonSub]モジュールを選択し、[デザイン]
ボタンを押してモジュールウィンドウを開きます。
2.カーソルを一番下(前回作成したSubKamokuZanCalc()の下)に移動し、
Function MotoireCalc() と入力しエンターキーを押下します。
3.すると1行空いて End Function と表示されます。
この中に元入金集計のプログラムを記述します。
4.以下のコードを Function MotoireCalc() と End Function の間に記述
します。
Dim ACC_DB As Database
Dim Kamo_T As Recordset
Dim Env_T As Recordset
Dim FindStr As String
Dim TotalSisan As Currency
Dim TotalFusai As Currency
Set ACC_DB = CurrentDb
Set Kamo_T = ACC_DB.OpenRecordset("KamokuTable", dbOpenDynaset)
Set Env_T = ACC_DB.OpenRecordset("EnvironTable")
TotalSisan = DSum("ZanDaka", "KamokuTable", "KamokuKind = 1")
TotalFusai = DSum("ZanDaka", "KamokuTable", "KamokuKind = 2")
Env_T.MoveFirst
FindStr = "KamokuID = " & Env_T.Fields("MotoireKamoID").Value
Kamo_T.FindFirst (FindStr)
Kamo_T.Edit
Kamo_T.Fields("ZanDaka").Value = TotalSisan - TotalFusai
Kamo_T.Update
Env_T.Close
Kamo_T.Close
ACC_DB.Close
5.モジュールを上書き保存します。
【解説】
まず、プログラムの解説の前に、元入金の計算方法を考えましょう。
通常、翌期首の元入金の計算式は以下のようになります。
(翌期首の元入金) = (期末の元入金) + (青色申告特別控除前の所得金額)
+ (事業主借) - (事業主貸)
または、
(翌期首の元入金) = (翌期首の資産総額) - (翌期首の負債総額)
見るからに下の式の方が簡単ですね。
そこで、この会計ソフトでは、下の式を用います。
即ち、今回作成する元入金の集計サブルーチンは、前々回に作成した勘定科目の残高
集計サブルーチンを呼んだ後に呼ばれる様にします。
それではプログラムの解説です。
1.まず、最初から6行は変数の宣言です。
2.8行目はデータベースのオープン、9行目は科目テーブルのオープン、10行目
は環境テーブルのオープンを行っています。
3.12行目は勘定科目テーブルの資産科目の残高の合計を計算しています。
4.13行目は勘定科目テーブルの負債科目の残高の合計を計算しています。
5.15行目は環境テーブルのカレントレコードを先頭レコードに移動しています。
6.17行目は科目テーブルのカレントレコードを元入金科目にするため、環境テー
ブルに設定してある元入金科目IDを用いて検索条件を指定しています。
7.18行目は17行目で作成した検索条件でカレントレコードを移動しています。
これにより科目テーブルのカレントレコードは元入金科目のレコードになります。
8.19行目は科目テーブルのデータをEditメソッドを用いて更新(残高を更新)で
きるようにしています。
9.20行目で科目テーブルの残高フィールドに元入金を計算して代入しています。
10.21行目で科目テーブルにデータを更新しています。
11.23行目で環境テーブル、24行目で勘定科目テーブル、25行目でデータベー
スをクローズしています。
以上で、元入金の集計サブルーチンは完成です。
次回は仕訳データ削除と年度のカウントアップを行います。
______________________________________
◆◇ Q&Aコーナー ◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇
今回はありません。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
◇ ACCESSで作るシリーズ 【会計ソフト編】
◇ 発 行 元 :Yoshihisa Fukuda(福田 義久)
◇ ご意見・ご要望
ご質問等 :y.fukuda@ro.bekkoame.ne.jp
◇ このメールマガジンは、インターネットの本屋さん『まぐまぐ』を利用して発行
しています。(まぐまぐID:0000030446)
◇ バックナンバー:http://www.bekkoame.ne.jp/ro/y.fukuda/
◇ 登録・解除 :http://www.bekkoame.ne.jp/ro/y.fukuda/
Copyright(C) 2000-2001 Yoshihisa Fukuda All rights reserved.
◇転載について
このメールマガジンの無断転載などは、一切禁止です。
転載をご希望の方は、事前にメールで連絡をください。
◇免責
このメールマガジン及びホームページの内容による、いかなる損害、障害などに
関して発行者は一切の責任を負いません。
掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
ACCESSで作るシリーズ 【会計ソフト編】
発 行 : Yoshihisa Fukuda 2001. 1.27 Vol.41
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
== ◇ 第4章 年度更新 ====================
今回は年度更新の元入金の集計サブルーチンの作成です。
--------------------------------------
4-1 年度更新
--------------------------------------
--------------------------------------
4-1-2 モジュール作成
--------------------------------------
元入金の集計サブルーチンを作成します。
【モジュール作成手順】
1.[モジュール]タブで前回作成した[CommonSub]モジュールを選択し、[デザイン]
ボタンを押してモジュールウィンドウを開きます。
2.カーソルを一番下(前回作成したSubKamokuZanCalc()の下)に移動し、
Function MotoireCalc() と入力しエンターキーを押下します。
3.すると1行空いて End Function と表示されます。
この中に元入金集計のプログラムを記述します。
4.以下のコードを Function MotoireCalc() と End Function の間に記述
します。
Dim ACC_DB As Database
Dim Kamo_T As Recordset
Dim Env_T As Recordset
Dim FindStr As String
Dim TotalSisan As Currency
Dim TotalFusai As Currency
Set ACC_DB = CurrentDb
Set Kamo_T = ACC_DB.OpenRecordset("KamokuTable", dbOpenDynaset)
Set Env_T = ACC_DB.OpenRecordset("EnvironTable")
TotalSisan = DSum("ZanDaka", "KamokuTable", "KamokuKind = 1")
TotalFusai = DSum("ZanDaka", "KamokuTable", "KamokuKind = 2")
Env_T.MoveFirst
FindStr = "KamokuID = " & Env_T.Fields("MotoireKamoID").Value
Kamo_T.FindFirst (FindStr)
Kamo_T.Edit
Kamo_T.Fields("ZanDaka").Value = TotalSisan - TotalFusai
Kamo_T.Update
Env_T.Close
Kamo_T.Close
ACC_DB.Close
5.モジュールを上書き保存します。
【解説】
まず、プログラムの解説の前に、元入金の計算方法を考えましょう。
通常、翌期首の元入金の計算式は以下のようになります。
(翌期首の元入金) = (期末の元入金) + (青色申告特別控除前の所得金額)
+ (事業主借) - (事業主貸)
または、
(翌期首の元入金) = (翌期首の資産総額) - (翌期首の負債総額)
見るからに下の式の方が簡単ですね。
そこで、この会計ソフトでは、下の式を用います。
即ち、今回作成する元入金の集計サブルーチンは、前々回に作成した勘定科目の残高
集計サブルーチンを呼んだ後に呼ばれる様にします。
それではプログラムの解説です。
1.まず、最初から6行は変数の宣言です。
2.8行目はデータベースのオープン、9行目は科目テーブルのオープン、10行目
は環境テーブルのオープンを行っています。
3.12行目は勘定科目テーブルの資産科目の残高の合計を計算しています。
4.13行目は勘定科目テーブルの負債科目の残高の合計を計算しています。
5.15行目は環境テーブルのカレントレコードを先頭レコードに移動しています。
6.17行目は科目テーブルのカレントレコードを元入金科目にするため、環境テー
ブルに設定してある元入金科目IDを用いて検索条件を指定しています。
7.18行目は17行目で作成した検索条件でカレントレコードを移動しています。
これにより科目テーブルのカレントレコードは元入金科目のレコードになります。
8.19行目は科目テーブルのデータをEditメソッドを用いて更新(残高を更新)で
きるようにしています。
9.20行目で科目テーブルの残高フィールドに元入金を計算して代入しています。
10.21行目で科目テーブルにデータを更新しています。
11.23行目で環境テーブル、24行目で勘定科目テーブル、25行目でデータベー
スをクローズしています。
以上で、元入金の集計サブルーチンは完成です。
次回は仕訳データ削除と年度のカウントアップを行います。
______________________________________
◆◇ Q&Aコーナー ◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇
今回はありません。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
◇ ACCESSで作るシリーズ 【会計ソフト編】
◇ 発 行 元 :Yoshihisa Fukuda(福田 義久)
◇ ご意見・ご要望
ご質問等 :y.fukuda@ro.bekkoame.ne.jp
◇ このメールマガジンは、インターネットの本屋さん『まぐまぐ』を利用して発行
しています。(まぐまぐID:0000030446)
◇ バックナンバー:http://www.bekkoame.ne.jp/ro/y.fukuda/
◇ 登録・解除 :http://www.bekkoame.ne.jp/ro/y.fukuda/
Copyright(C) 2000-2001 Yoshihisa Fukuda All rights reserved.
◇転載について
このメールマガジンの無断転載などは、一切禁止です。
転載をご希望の方は、事前にメールで連絡をください。
◇免責
このメールマガジン及びホームページの内容による、いかなる損害、障害などに
関して発行者は一切の責任を負いません。
掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□