メールマガジン【アクセスで作るシリーズ】


バックナンバー 【会計ソフト編】 Vol.48
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

    ACCESSで作るシリーズ  【会計ソフト編】

    発 行 : Yoshihisa Fukuda          2001. 3.31 Vol.48

■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
今回は仕訳入力の摘要入力フィールドを少し変えてみましょう。

== ◇ 第5章 拡張機能     ====================

--------------------------------------
 第3回 仕訳入力の摘要入力フィールドの変更
--------------------------------------
仕訳入力で仕訳を入力する際、よく発生するのが同じパターンの仕訳の入力です。
そこで、摘要の入力フィールドをコンボボックスにして、以前に一度入力した内容と
同じ場合は選択できる様にしましょう。

1.データベースウィンドウの[フォーム]タブで[SiwakeForm]を選択し、デザイン
  ウィンドウで開きます。
2.次に、摘要(上段)のテキストボックスを選択し、マウスを右クリックして
  [コントロールの種類の変更]-[コンボボックス]を選択します。
3.すると、摘要フィールドがコンボボックスに変わります。
4.同様に摘要(下段)もコンボボックスに変更します。
5.摘要(上段)のコンボボックスを選択し[値集合ソース]プロパティにカーソルを
  移動して、右端の[...]ボタンをクリックします。
6.クエリービルダーが起動され、[テーブルの表示]ダイアログが出てくるので、
  仕訳テーブルを追加しましょう。
7.クエリービルダーの上段にある仕訳テーブルの[TekiyoUp]フィールドをダブル
  クリックして、下段のフィールドに設定します。
8.クエリービルダーを保存して終了しましょう。

ここで、一度フォームを保存して、どんな感じになるか見てみましょう。

仕訳が1件も無い時は、摘要(上段)のコンボボックスを開いても何も出ません。
何件か仕訳が入っていれば、摘要(上段)のコンボボックスを開くと、今まで入力
した内容が、コンボボックスに一覧表示されます。
しかし、全く同じ摘要も入力した数だけ表示されます。
例えば、仕訳を3件入力し、3件とも摘要(上段)に「あああ」と入力すると、摘要
(上段)のコンボボックスを開いた時に「あああ」が3行出ます。
これはあまり意味がないので、同じ物は1つだけ表示する様にしましょう。

1.では、再び仕訳入力フォームをデザインウィンドウで開きましょう。
2.摘要(上段)コンボボックスを選択し[値集合ソース]プロパティにカーソルを
  移動して、右端の[...]ボタンをクリックします。
3.クエリービルダーが開いたら、プロパティウィンドウのタイトルが[クエリー
  プロパティ]となっている事を確認します。
  もし、[フィールドリストプロパティ]等になっていたら、クエリービルダーの
  上段(仕訳テーブルが表示されている所)のグレーの所をクリックします)
4.プロパティウィンドウのタイトルが[クエリープロパティ]となっている事を確認
  したら、プロパティウィンドウの[固有の値]プロパティを[いいえ]から[はい]に
  変更します。
5.これで、同じものは1つになって表示されます。

では、次にもう少し考えて見ましょう。
今のままでは、仕訳の摘要のパターンの数分全てがコンボボックスに表示されます。
これは少し使いづらいでしょう。
そこで仕訳の貸借の科目の組み合わせが同一のものだけ、摘要コンボボックスに一覧
表示される様にしましょう。
売上の仕訳を入力している時に経費の摘要が選択できても意味が無いでしょう。

1.仕訳入力フォームの摘要コンボボックスのクエリービルダーを開きます。
2.上段の仕訳テーブルの[KariKamoID]と[KasiKamoID]をダブルクリックして下段
  のフィールドに設定し両方とも[表示]のチェックを外します。
3.[KariKamoID]フィールドの抽出条件に [Forms]![SiwakeForm]![KariKamoID]
  と入力します。
4.[KasiKamoID]フィールドの抽出条件に [Forms]![SiwakeForm]![KasiKamoID]
  と入力します。
5.クエリービルダーを保存して閉じます。
6.摘要(上段)コンボボックスを選択した状態で[フォーカス取得時]プロパティ
  へカーソルを移動し、[▼]ボタンで[イベントプロシージャ]を選択して[...]
  ボタンをクリックしてモジュールウィンドウを開きます。
7.モジュールウィンドウが開いたら、Private Sub TekiyoUp_Enter() と
  End Sub の間に以下のコードを記述します。

  Private Sub TekiyoUp_Enter()
    TekiyoUp.Requery
  End Sub

8.モジュールウィンドウを保存して閉じて、フォームも保存して閉じます。

これで、同じ科目のパターンの摘要が一覧表示される様になりました。

摘要(下段)も同様に修正しましょう。

--------------------------------------
次回は、VBAでのデータベース(レコードセット)の操作に関する解説を行います。
______________________________________
◆◇ 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.

◇転載について
 このメールマガジンの無断転載などは、一切禁止です。
 転載をご希望の方は、事前にメールで連絡をください。
◇免責
 このメールマガジン及びホームページの内容による、いかなる損害、障害などに
 関して発行者は一切の責任を負いません。
 掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□