- 締切済み
Accessに詳しい方お願いします
Accessに詳しい方お願いします 入力画面を作って データを入力して、登録を押すとデータをテーブルに格納し 更に検索画面を作って 格納したデータを呼び出せるようにしたいのですが どうやって作ったら良いかわかりません。 Accessは昨日から始めたばかりの初心者です。 どうか教えていただけませんか? また、コード(VB?プログラミング?)を使わなくてはいけないのですがまったくわからないです。どんな感じでコードを作ればよいのでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- kyou1
- ベストアンサー率49% (32/65)
データベースを作成するのであれば、まずはクエリとテーブルの関係 を理解することが先決です…が、それを一から学ぼうと思うと時間が かかりますので、とりあえず自分の作りたいと思うフォームに近い サンプルを入手して、加工するのがいいかもしれません。といっても フォームやVBAを多少理解していないと難しいですが…。 まずはデーターベースをわかりやすく解説している本などを 1冊読んでみることをお勧めします。 ちなみに「ACCESSでできる手作りデータベースベスト5」は参考になるかも?です。
- ricman
- ベストアンサー率58% (10/17)
access関係の本が沢山出ています。 サンプルプログラムCDの付いた本がありますから、それで勉強するのが早いと思います。
>Accessは昨日から始めたばかりの初心者 ならば、Access のヘルプ文を全て印刷して3度程度通読されたし。 一度目は、チンプンカンプンでも最後まで読み通すこと。 二度目は、必要と思われるサンプルを演習すること。 三度目は、自分なりの作法、開発手法を意識して再度通読すること。 これ位の質問準備をしてから・・・。 基本データテーブル1[会社一覧]: ID__表示順位__会社名 _1_________1__会社名1 _2_________2__会社名2 随時データテーブル1[XXXXXX](主): ID__管轄区分__回収元_ID _1_________1__________1 この段階で[クエリ1]を作成してみます。 クエリ1: ID__管轄区分__回収元_ID__会社名 _1__1:区分A___________1__会社名1 SELECT 主テーブル.ID, 主テーブル.管轄区分, 主テーブル.回収元_ID, 回収元一覧.会社名 FROM 主テーブル LEFT JOIN 回収元一覧 ON 主テーブル.回収元_ID=回収元一覧.ID; [クエリ1]では、バイト型の[管轄区分]は区分名に変換されて表示されています。 [クエリ1]では、主テーブルには無かった[会社名]もLEFT JOIN操作で表示されています。 結果、日々管理する主テーブルのデータは、[管轄区分]と[回収元_ID]だけになっています。 従テーブル: ID__主テーブル_ID__ハンディID__シリアルNo__プリンタNo _1______________1___________1___________1___________1 _2______________1___________2___________2___________2 _3______________1___________3___________3___________3 この段階でフォームウイザードでフォームを生成すると・・・。 ID__________[___1] 管轄区分____[1:区分A]<---コンボボックス 回収元_ID___[____1][会社名1_________]<---変更不可に! 従テーブル: ===================================================== ID__主テーブル_ID__ハンディID__シリアルNo__プリンタNo ===================================================== _1______________1___________1___________1___________1 _2______________1___________2___________2___________2 _3______________1___________3___________3___________3 [クエリ1]、[従テーブル サブフォーム]というフォームが出来上がります。 <問題点>表示されるレコード順が必ずしも[ID]の順番通りにはならない。 <改善点>ORDER BY 節で[クエリ1]、[従テーブル]の順位を制御する。 例えば、[従テーブル サブフォーム]のレコードソースを次のように変更。 SELECT 従テーブル.* FROM 従テーブル ORDER BY 従テーブル.ID; これで、[従テーブル]の並びは制御できます。 <問題点>表示されるレコード順が必ずしも[ID]の順番通りでもない。 <改善点>[従テーブル]に[行No]列を追加して確実に何行目のデータかも記憶する。 従テーブルの2行目を削除し、また、2行目に追加するなどすれば順番は無茶苦茶に! ですから、[ID]で並べても実際上は意味がない訳です。 さて、ここまでで、登録フォーム、検索フォーム云々の前にやる事山積が判ったことでしょう。 先ずは、テーブル設計を再検討すべきです。 この再検討にあたっては、リレーショナルデータベースの基礎概念の把握、 加えて、クエリやSQL文に関する初歩的知識も必要。 更に、明細行の追加・削除に応じて列[行No]を自動で振り直すにはVBAの素養も。 私のサンプルは最適ではないでしょう。 が、一応は、「フムフム!ガッテン!」と判断できる知識の取得が先決。 ということで、Access のヘルプ文を全て印刷して3度程度通読されたし。 なお、私は、プログラマでも何でもない素人です。