• 締切済み

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

  • 日本史の問題集は東進の一問一答で十分でしょうか。

    実力をつける日本史100題、日本史標準問題精講?など、実践的な問題集もありますが、実践的な問題演習なら過去問でやるので、一問一答で断片的な知識を習得するだけで良い気もするのですが。皆さんは、どうされましたか。 独学なので周りにアドバイスしてくれる人がいなくて困ってます。

  • VBの手法(一問一答など)について詳しいサイトを知りませんか?

    VBの手法(一問一答など)について詳しいサイトを知りませんか? 使用しているパソコンに関する内容は「Windows XP」、「EXCEL2003」です。 現在VBで日々入出荷する箱の在庫管理を行なおうとしております。  【フォームA】・・・日々の入力に使用    ●テキスト:現在の在庫数(表示のみ)      ※数値が300未満になったら数値を赤太文字にする    ●テキスト:本日の出荷予定数(入力対象)    ●テキスト:本日の入荷予定数(入力対象)    ●テキスト:修正数(入力対象)    ◇更新ボタン⇒現在の在庫数を更新    ◇補充ボタン⇒フォームAを非表示にし、フォームBを呼び出す    ◇終了ボタン⇒処理を終了する  【フォームB】・・・臨時の追加時に使用    ●テキスト:日付・・・当日日付が表示される     (※入力者が休んだ場合を考え修正可能にする)    ●テキスト:補充数(入力対象)    ◇実行ボタン⇒(1)エクセルシートに以下のようにデータを蓄積していく            セルA1=項番,セルB1=日付,セルC1=数量            セルA2=1,セルB2=2010/4/1,セルC2=500            セルA3=2,セルB2=2010/5/2,セルC2=300            以下データを順々に蓄積していく           (2)フォームAの『現在の在庫数』に補充数をプラスする            (3)ファームBを閉じ、フォームAを呼び出す    ◇履歴ボタン⇒データを蓄積しているエクセルシートを呼び出す 以上のことを行いたいのですが、 例えば、『コマンドボタンを押してエクセルシートを呼び出す実行命令は?』など、 VBで行ないたいことを、一問一答のように解説されている サイトをご存知の方はいらっしゃいませんか?

  • 苦手科目から逃げること

    特に歴史で感じるのですが、日本史の参考書、一問一答、問題集などたくさん持っているのですが、苦手です。 それで、どちらかと言うと世界史のほうが個人的に簡単に感じるので、世界史参考書、一問一答、問題集なども買ったのですが、それでも歴史が得意という感覚にはなれません。 そのほかにも、そういう受験用ではない、読み物としての歴史の本も読んでいるのですが、どうも歴史用語の暗記というものが合わないと感じます。 これはもう捨てて地理選択しかないのでしょうか?

  • アクセスでデータを分配するには

    フォームにテキストボックスが3つあり 企業名を入力するテキストボックスと 駅名を入力するテキストボックスが2つあり登録ボタンを 押下すればテーブルに2つレコードが作成されるようにしたいのですが どうすればいいのでしょうか? 例えばテキスト1の企業名に ●●商事 テキスト2の駅名に銀座 テキスト3の駅名に有楽町と入力し登録ボタンを押下すればテーブル のフィールド名、企業名に●●商事フィール名 駅名に銀座というデータともうひとつ とフィールド名、企業名に●●商事フィール名 駅名に有楽町というデータの2つのデータが テーブルに作成されるようにしたいのですが。。

  • Accessのサブフォーム

    教えてください。 フォームの中にサブフォームを作っているのですが(入力用の)、 サブフォーム内のテキストボックスは、1件目のデータと新規レコード が表示されています。 この新規レコードのテキストボックスを表示しない方法はありますか? 2件目以降のデータ(新規レコード)を入力する際は「追加」の コマンドボタンを使用して、その都度、新規レコードを表示させたい のです。 よろしくお願いします。

  • Access2002_メソッドまたはデータメンバが見つかりません

    社員情報を入力・変更していくためのフォームがあります。 そのフォームが立ち上がる際  ・新規入力画面を表示させる  ・フォーカスを[データ入力更新日]テキストボックスに合わせておく という操作をさせたく下記のようなコードを書きました。 Private Sub Form_Open(Cancel As Integer)  DoCmd.GoToRecord Record:=acNewRec  Me.txt_データ入力更新日.SetFocus End Sub フォームを立ち上げようとすると「.txt_データ入力更新日」が反転されタイトルで書いたエラーメッセージが表示されます。 試しに他のテキストボックスにフォーカスがいくよう変更してみるとエラーは起こらず 指定したテキストボックスにフォーカスが置かれてフォームが開きました。 [txt_データ入力更新日]の名前はプロパティからコピペしているので間違っておりません。 名前が違っている以外にどんなことが考えられるでしょうか? よろしくお願い致します。 テキストボックスの名前は間違いありません。

  • アクセスのデータ型について

    ルックアップウィザードを利用してテーブルを作成しています。  項目がア、イ、ウの3項目ありそれぞれにルックアップウィザードを利用したのですが、おなじように操作したつもりがア、イのデータ型はテキストになって、ウのデータ型は数値型になりました。  ウのデータ型がテキスト型にならないのは何故なんでしょうか。  オフィスXPを使用しています。

  • アクセス2000のレポートについて

    アクセス2000でデータベースを作成しています。 保存したデータをもとにして、お客さんへの通知書をレポートとして出力したいのですが、テキストボックス内のデータの長さがレコードによって大きく異なっています。 レポートで出力する時に、テキストボックス内のデータ量に応じてテキストボックスの高さを自動調整することはできないのでしょうか?

  • 世界史の勉強法

    世界史の勉強法 世界史の勉強法について質問です。 今現在、授業を聞いて、家で青木の実況中継を読み、一問一答で演習をしています。 復習のサイクルなどがはっきりと確立できていないのもあり、かなり時間がかかり、他の教科に支障が出ています。 また一問一答をやりこんでいると、順番で覚えてしまう傾向があります。 ですので、用語を答えられるようになったら、今度は逆から、つまり用語を見て、何なのか説明できるようにする、こうやっていこうかと思ってるんですが、オーバーワークですかね?? みなさんは高校時代どのように世界史を勉強されていたのでしょうか。 ちなみに現在高2、早慶志望です。 拙い日本語ですが、アドバイスよろしくお願いします。

  • Accessのプロパティについて

    ExcelからAccessへデータをインポートしてテーブルを作り、フィールドの[データ型]を[テキスト型]から[数値型]へ変更しようとすると、保存時に「レコードが大きすぎる」と弾かれてしまいます。仕方がないのでフォーム上でテキストボックスのプロパティで書式を変更しようとすると、コンボボックスのリストが表示されないため変更できません。これはやはりレコードが大きすぎるためなのでしょうか?また、その解決法を教えていただきたいのですが…。あまりAccessは詳しい方ではないので分かりやすく御願いします。

専門家に質問してみよう