<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 Access97データベース工作室>食いだおれデータベース
  Page1Page2Page3Page4Page5Page6Page7Page8Page9Page10Page11Page12Page13



さて、それでは、手始めに「新しいお店を追加入力する/お店の情報を照会するためのフォーム」を作りましょうかね。

とりあえず、[食いだおれテーブル]を基に、フォームウィザードでも使って単票フォームを作ってください。それを土台にしましょう。

フォーム名はお任せします。
あたしはー・・・[食いだおれ入力]にしようかな(もうやけくそ)。



はは。こんなになりました。さっき入力したレコードが一件だけ残ってました。
ルックアップしているフィールドは、自動的にコンボボックスになってると思いますが、ちゃんと参照できてます?

で、テキストボックスやラベルの位置や大きさを調節しましょう。あと、フォームの色とか、いろいろ変えてみてください。

どうぞお好きなように。


で、フォームビューに切り替えて、何件か入力してみましょう。

カーソルが移動する順番は入力しやすいか、漢字変換機能は入力の妨げになりはしないかなど、入力してみないとわかりにくいもんです。
何件か入力してみて、このフォームにどんな機能があれば便利か、いろいろ考えてみましょう。


まあ、このままでもそこそこ使えそうですけど・・・。

まずは、この店で食ったメニューの一覧をどこかに出さないといけないですよね。[食いだおれ明細テーブル]の中身。

あと、「新規追加」とか「前の店の情報を見る」とか、移動ボタンを使えばいいんですけど・・・もうちょっと見やすいボタンとかにできないもんですかね。

[ナンバー]を自動的にふるようにしましょうかね。いちいち入力するのもめんどうだし。。。

このあたりから挑戦してみましょうか。


■メニュー一覧を表示する。(サブフォームの利用)

ほんとは、「ボタンクリックしたら、メニューを入力する画面がもうひとつでてきて・・・」とか、いろいろカッコイイ仕組みを作りたいんですけど、今日のところはサブフォームを利用しましょうよ。これ、嫌がる方もいらっしゃるんですけど、うまく活用すればそこそこ便利ですし・・・。

まずは、[食いだおれ明細テーブル]を基に、表形式のフォームをひとつ作成しましょう。デザインはお任せしますので、いちおう全フィールド選んで、適当にテキストボックスの大きさとか調節してください。

わたしは、「フォームのプロパティ」で、レコードセレクタや移動ボタンを非表示にして、スクロールバーを垂直方向のみにしました。
あと、各テキストボックスのプロパティで「漢字変換モード」を、[番号]はオフ、[メニュー]はオンになるようにしてみました。

あと、ヘッダーと詳細部分の色も、派手な色に塗り分けてみました。
みなさんも思い切り大胆にいきましょう。



で、なんか適当な名前を付けて保存してください。あたしゃ[食いだおれ明細入力]にしました。

でー・・・。明細の方は閉じて、今度は[食いだおれ入力]フォームをデザイン画面で開きます。サブフォームを作りましょう。
ツールボックスの中の、きみどり色の印のついたボタンが、サブフォームコントロール作成のためのボタンです。
これをクリックして、フォームの下の方でもクリックしてみてください。

なんか出てきますよねぇ。埋め込み14っていう適当な名前のラベルがついてますから、たぶん埋め込み14っていう名前なんでしょう。
ここにサブフォームを埋め込むんです。じゃ、この「非連結」とかいう枠のプロパティを出しましょう。

と、まず、「埋め込みxx」じゃなんですから、名前、変えておきましょう。
なんでもいいです。わかりやすいように、埋め込むフォームと同じような名前になさるといいかもしれないですね。



で、次に「データ」というタブを見ます。
ソースオブジェクトという欄がありますね。ここに、さっき作った表形式のフォーム、つまり埋め込むフォームの名前を指定します。

一覧表示されると思いますので、中から選びましょう。
選ぶと、親フィールド子フィールド欄に、[ナンバー]っていうフィールド名が入りません?
これもリレーションシップの設定のおかげ。このふたつのフォームが基にしているテーブル同士が、[ナンバー]というフィールドの値で結びついているからです。

後は、この白い四角を、適当な大きさに広げます。作った状態だと、ちょっと小さめですよね。

さあて、フォームビューに切り替えて・・・いかがでしょうか。
サブフォーム欄の大きさの調節は、何度かデザインビューと切り替えながら調節しましょう。


で、2〜3件、入力してみましょう。サブフォームの内容はちゃんと、紫色のフォームの方の[ナンバー]に準じたレコードを表示するようになってます?
前のレコードを表示させてみたりして、フォームの中のデータがどう変化するか、いろいろ試してみてくださいね。今日は練習ですからネ。それに、いろいろいじってるうちに「ここをこうすると入力が便利になりそう」とか、いいアイディア浮かんできますよ。

さて、しばらく入力していただいて、紫色の方に[ナンバー]を入力すれば、自然とサブフォームの方の[ナンバー]にも同じ物が入ること、確認できましたよね。
サブフォームが基にしている[食いだおれ明細テーブル]は、[ナンバー]と[番号]のふたつを組み合わせて主キーにしていますので、このふたつの中身が空っぽってのは、具合が悪いですよね。でも、ちゃんとリレーションシップの設定が正しく働いて、サブフォームの方にもメインのフォームの[ナンバー]が反映されるようになりました。
じゃあ、サブフォームの方には、[ナンバー]のテキストボックス、いらないかなぁ・・・。

これ、削除して、左につめて、ひとつ欄を増やしましょうか。[評価]でも付けてみます?

フォームはいったん閉じましょう。で、[食いだおれ明細テーブル]を開きます。5番目のフィールドとして、[評価]と書き足して保存しましょう。

で、今度はサブフォームの方です。デザイン画面を開いて、フィールドを追加します。
フィールドリストというボタンがツールバーにありますんで(緑色の印)、これをクリックすると、画面のどこかにフィールドリストという小さいウィンドウが出てきます。
中から、[評価]をフォーム上にドラックしてきましょう。

ラベルがついちゃってますからね。表形式のフォームのときはいまひとつしっくりこないんですけど、ラベルの方だけ削除して、テキストボックスの位置や大きさを調節してくださいね。

ヘッダー部分にラベルをひとつ作って、[評価]の見出し部分にしましょう。


今作ったばっかしのフィールドなんで、中身は空っぽですけど、ここに入力しておけば、どどんぱクッパはうまかったかまずかったか、ひとくちメモを残しておけますよね。
いちおう、ふつうのテキスト型フィールドは、50桁まで入力できます。
えー、だからひらがな漢字だと25文字、かな?だいたいみなさんそうなってると思うんですけどね。
でも、そんなに横に長いテキストボックス作るわけにもいかないし、まあ、5〜6文字でうまいとかまずいとか、そういう感じの入力欄になりそうですけれど・・・。

もし、点数を付けて、後で総合評価したい、ということであれば、このフィールドを数値型にしておくとよいでしょう。
後で集計クエリーを使って、お店ごとに点数を集計したり、平均点を出してランキングにしたり、いろいろ楽しめると思います。"うまい"と"まあまあ"と"まずい"じゃ、どういうふうに並び変るかわからないんで、テキスト型で使う場合は、単なるコメント欄と考えた方がいいですね。