<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 Access97データベース工作室>顧客管理システム
  Page1Page2Page3 > Page4 > Page5Page6



フォームウィザードを使って、表形式のフォームを作ります。
一覧表だから、全部のフィールドをずらずら並べなくてもいいかな・・・。

[顧客番号]と[顧客名]だけにしてみました。

うっかりしてると、単票形式のフォームのままになっちゃいますから、途中で表形式のフォームを指定することを忘れないようにしましょうね。

で、あとは適当にフォーム名をつけて、ウィザード完了です。


あたしのはまだ2〜3件しか入力してないんでさみしいですけど、これで顧客数が増えても一覧表示できそうですよね。
でも、ちょっと見栄え悪いかな・・・。デザイン、変更してみましょうかね。

色とかテキストボックスの大きさとか、お任せしますのでお好みのフォームに変えてみてください。


で、このフォームの役割をちょっと考えてみたいと思います。
ここから、新規に顧客の登録ができる状態にしておいてよいものかどうか、ということです。

フツウは、一番下に白い新規入力行が出ますよね。
これを非表示にしたい、新規登録はこのフォームからはしない、という場合は、フォームのプロパティで調節します。

この辺は、そのフォームの役割というか、どういう時に使うか、ということが大きく関係してきますよね。ケースバイケースで調節していきましょう。

なんでこのフォームから新規登録できないようにしたかって?
うーん、別にいいのかもしれないですけど、だって、このフォームからだと、顧客番号と顧客名しか入力できないじゃないですか。
結局最初に作ったピンクのフォーム出さなきゃならないし・・・。
中途半端な入力になっちゃうなら、いっそのことできないようにしておいて、新規登録は登録画面を開いて行う、っていう感じにした方が、使う側にもわかりやすいと思うんですよね。

で、後はフォーム全体のプロパティをいろいろいじってみましょう。
この辺もお好みで。お任せします。


おお、こんな感じになりました。
みなさんのフォームはいかがでしょう。いろいろ調節してみてくださいね。

じゃ、このフォームから、該当する顧客の詳細フォーム(ピンクのフォーム)を出すようにしてみましょう。
えーと、どうしようかな・・・。とりあえず[顧客番号]のテキストボックスをクリックしたら、その顧客の詳細画面が出るようにしてみようかな・・。

[顧客番号]のクリック時のイベントを作りましょう。テキストボックスですけどね、
クリックしたとき動くマクロとかプロシージャとかも作れるんですよ。

さてー。。。ちょいとややこしいですが、こんな感じのイベントになります。途中で改行せず、全部一行に入力するようにしましょうね。

これはマクロの「フォームを開く」というアクションですね。
ふつうに開くと、もとにしているクエリーかテーブルの1件目のレコードを表示する状態でフォームが開きますけど、そうじゃなくて、指定したレコードを表示した状態で開くことも、できるんですね。

DoCmd.OpenForm "開くフォーム名", , , "条件式"

ちょっと条件式がややっこしいんですけども・・・。

"[顧客番号] = '" & Me![顧客番号] & "'"

顧客番号がこのフォームの顧客番号(クリックした番号)と同じレコードを持つレコードを表示した状態でフォームを開いてこい、という条件になります。
ややっこしいっすねぇ。