• 締切済み

Accessのデータで一問一答形式のクイズを作りたい

WindowsXP上に載せたAccess97で、英単語や英文のデータ管理をしています。「英語」「日本語(訳)」「備考」のみのシンプルな作りです。 データがだいぶ溜まってきたので、これを暗記・演習用に利用したいと思うようになりました。 このデータを利用して、一問一答式のクイズを作ることはできないでしょうか? 機能・操作としては、 1)あるレコード(行)の「日本語」がランダムに選ばれ、テキストボックスでポップアップされる。 2)テキストボックスをクリックすると、同じレコードの「英語」が出てくる。 3)さらに何か操作をすると、レコードのフォーム全体が見られる。 の3つができれば良いと考えています。 宜しくお願い致します。

みんなの回答

  • gadd3
  • ベストアンサー率46% (211/451)
回答No.1

>1)あるレコード(行)の「日本語」が >ランダムに選ばれ、テキストボックスでポップアップされる。 VBAで「Randomize ステートメント」というのを使えばできると思います。 2)と3)ももちろん可能ですが、ここで説明するには長すぎて、ちょっとできません。 おおまかな手順としては、例えばですが以下のようにすればよいと思います。 (1)英単語テーブルの作成 (a)数字キーフィールド(乱数と合致させるためのフィールド) (b)英単語フィールド (c)訳フィールド (d)その他・備考フィールド (2)ご質問の(3)ができるフォームを作成 (3)乱数発生フォームの作成 (a)(1)のテーブルをデータソースとする。 (b)乱数を発生させるためのコマンドボタンを作成し、 発生した乱数と同じ数字キーをもつレコードを表示 させるようにする。 レコードの表示は Docmd.GotoRecord などでできると思います。 (d)表示された数字キーをもとに(2)のフォームを、 開けるコマンドボタンを作成する 抽象的ですみませんがこんな感じです。 (3)のフォームを作成する時(1)のテーブルとの連結が簡単かと思いますが、非連結にしたいならDoLookUp関数やDAOなどを使います。

chizutama
質問者

お礼

詳しいご回答、ありがとうございました。 AccessのVBAは以前挫折していることもあり、「他に方法はないかなぁ・・・」とジタバタしているうち、以下のようなフリーソフトを発見しました。 http://www.vector.co.jp/soft/win95/edu/se249930.html 今回の目的にはピッタリなので、とりあえずこちらを使ってみることにします。VBA、いつか挑戦してみます(^^;

関連するQ&A

専門家に質問してみよう