<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 MS-Access97超入門>基本をマスターしよう
 DBTable1Table2Fom1Form2Form3Query1Query2Query3Query4Query5Query6Report1Report2Report3Macro



■Table2 : テーブルにデータを入力する

さて。テーブルに名前がついたら、もう一度中身を確認して、テーブルのウィンドウだけ閉じましょう。
右上の×印の刀自ルボタンをクリックします。

名前を付けずにテーブルのウィンドウを閉じようとしたり、いったん保存してからフィールドを追加したり、
ちょっと書き換えたり変更したりして閉じようとしたとき、Accessがちょっぴり気を利かせてメッセージを出してくれたりします。

当然ですが、[はい]をクリックすれば保存しながら閉じ、[いいえ]をクリックすれば変更内容は反映されずに閉じられ、
[キャンセル]は閉じること自体をやめます。
このへんの動きをアテにして、このとき名前を付けるようにしてもよいんですけどね。
でも、いつ何時何が起こるか世の中わかりませんから・・・・。
こまめに保存しながら(保存のツールボタンを時々クリックしながら)テーブル作成をするくせをつけちゃいましょう。


やったー♪
テーブルがいっこできました。


んじゃあ・・・・練習です。こんな感じのデータが入るためのテーブルを、新しく作ってみましょう。
データ型は全部テキスト型のままでよいですよ。

で、[成績]を主キーにしてみてください。

テーブルの名前は・・そうですね。[成績テーブル]にしましょうか。

成績 内容 ごほうび
A たいへんよくできました ペアで月面旅行
B よくできました コシヒカリ100kg
C 平均です 高級スノータイヤ4本
D この次はもっとがんばりましょう ひみつステッカー2枚セット
E なってません うでたてふせ100回

できました?これでテーブルがふたつになりましたよね。


と、まあこんな感じで、処理に必要そうなテーブルをいくつか作っていくわけなんですが・・・・。
どういうテーブルを作ったらいいのかな・・・というところが、作り手の腕の見せ所なんですね。
また、どういうデータベースを作りたいかによって、テーブルの構造やらもろもろ違ってくるはずなんで。。。
入門書などにはあんまり詳しく解説されてはないと思います<どういうテーブルを作ったらよいか??とか・・。

こればっかりは机上の知識ではなく、鍛練です。
納品書を発行するデータベースを作りたい・・と思ったら、そのためにどんな構造のテーブルを作るべきか・・・
ここんとこがぱっとイメージできるようになると、Accessなんてへのかっぱです。
でも、これがぜんぜんイメージできないと、操作をいくら覚えてもあんまり威力を発揮しないんです。

身の回りにある情報の集まり・・・高速道路の料金表とか時刻表とかスケジュール表とか顧客名簿とか・・・
そういうものをじっと見て、これをAccessで扱う場合、どういうテーブルを作ったらいいか・・???みたいなことを、
頭の中でシュミレーションして訓練してみてください。
コツは「縦にびよーんと伸び縮みするような表をイメージする」ってところじゃないかなと思いますよ。


さて、ふたつテーブル作りましたけど、このテーブルの中身、今どうなってるでしょう。
空っぽですよね。今作ったばっかしですから、なんかデータが入力されてたら気持ち悪いです。

別にやり方が決まってるわけじゃないんですが、だいたい、テーブルに直接データを入力するのではなく、
データの入力がしやすいようなフォームを作って、そのフォームを通じてテーブルにデータが入力されるような仕組みを作ります。
まあ、別にそうしなきゃイケナイっていう決まりがあるわけじゃないんで、自由なんですけれど・・・。

でも、テーブルに直接データを入力するところもちょっと見ておきましょうか。

テーブルのデザインをいろいろ変更したり新しいフィールドを追加したりするときに見るのがさっきのデザインビューです。
これはよいですよね。
デザインビューを開くためには、そのテーブルをクリックして青く反転表示させ、右側の[デザイン]ボタンをクリックします。

これで「名簿テーブルのデザインビューを開く」という動作になります。
名簿テーブルのフィールド名を変更したり、新しく[住所]なんていうフィールドを追加してみたり、
[学部]というフィールドはいらなくなったので削除しちゃえ、なんていう操作をしたりします。
でも、さっきもちょびっとふれましたが、テーブルのデザインはあんまりちょろちょろ変更しない方が無難です。
なんでかって??うーん・・・その辺はまたおいおい・・。

で、もう一個、[開く]っていうボタンがありますよね。今の[デザイン]のボタンのすぐ上です。
こっちが、「名簿テーブルを開く」っていう動作で、テーブルのデザインじゃなくて、テーブルの中身を表のカタチにして表示してくれるっていうことになります。

ちょっとやってみましょうか。

およーん・・・なんか、変なウィンドウが出てきましたですねぇ。
なんか、表みたいですけど、1行だけですね。

こういうのをデータシートビューと呼びます。
今の[名簿テーブル]の中身をそのまんま表のイメージで表示してくれる画面です。テーブルを開くと、これが出てきます。

じゃあ、ちょっと入力してみましょうか。なんか適当に1件入力してみましょう。
え?なんて入力すればいいかって?なんでもいいですよ。
それっぽいの入力してください。
なんか適当なデータ考えて入力するのも、データベース作りに欠かせない作業です。

なんか勝手に2行になりましたねぇ。
で、一番左端のねずみ色のところ見ると、エンピツのマークと、ウニみたいなマークがついてますね。
エンピツマークは「今編集中のレコードです」という意味。
ウニのマークは(ウニじゃないとは思いますが)「新規にレコードを追加なさるならここに」という意味です。
まあ、あんまり難しいこと考えずに、5〜6件入力してみましょう。

[かせぎ]の数値を3桁ずつカンマで区切って4,520,000って表示させたいとこですけど、これはあくまでもテーブルの中身そのもの。
カンマで区切るとか、円マーク付けるとかは、書式といって見た目の部分の機能になります。
フォームとかレポートとかを作るときにいやというほど出てきますので、テーブルの中身をいじってる間は実数のことだけ考えましょう。

赤いところを右にそーっとドラッグすると、[氏名]の枠が少し広がります。入力しやすい幅に調節するとよいでしょう。


主キーの設定をしていれば、同じ学籍番号を受け付けません。
ですので、10008のジョン・ロードくんをうっかり2回入力しちゃうことはありえないんですが・・・・。
まあ、人間ですから、うっかり1000008のジョン・ロードくん・・なんて、学籍番号まで間違えて入力しちゃったりするかもしれないですよね。
間違ったデータを入力してしまった場合はというと・・・。

例えば入力の途中で気づいたとしますよね。
左端を見て、エンピツマークだったら、まだ編集中のレコードで、正式にテーブルに追加されてないことになってるんですね。
なので、この状態のときはキーボードの[ESC]キーを押せば、編集中のレコードを破棄することができます。

でも、ずーっと後になって気づいたり、慌ててどっか別のとこクリックしちゃったりして、エンピツマークが消えちゃったら。。。
そしたら、このレコードはもうテーブルの中の一員なので、エスケープキー押してもうんともすんとも言いません。

その場合はちょっと乱暴ですが、レコードの削除をします。
削除したい、間違ったレコードの左端のねずみ色のところ(レコードセレクタといいます)をクリックすると、1行分真っ黒くなりますよね。
この1レコードを選択している状態になります。

で、キーボードの[Delete]キーを押すか、右クリック(ショートカットメニュー)の「レコードの削除」を選択します。

と、なんかものものしいメッセージが出てきますね。

Accessは、レコード単位にデータが入力されていく仕組みになってます。
表計算ソフトみたいに、入力して、保存して・・・という考え方はありません。
入力したデータは、もうこれでテーブルの中に保存されてるわけなんです。
なので、レコードを削除するという操作をすると、「あっ、違うやつ削除しちゃったーまちがえちゃったー」とか言っても、
もう取り返しがつかないんですね。戻せません。と、いう意味のメッセージです。

でも、ここでびびって[いいえ]をクリックしたのでは、何万回やっても間違って入力しちゃったレコードは削除されません。
勇気を持って、[はい]をクリックしましょう。と、レコードは削除されます。


まあ、こんなもんかな・・・。んじゃ、テーブルをいったん閉じましょうか。

[氏名]の枠をちょっと広げたりしましたんで、こんなメッセージが出てきた方もいらっしゃると思います。
次このデータシートビュー開いたとき、[氏名]の枠が今の幅になっててほしいなーという場合は[はい]の方をクリックしましょう。

では、もうひとつ作った[成績テーブル]に、データの入力をしてみましょう。

成績 内容 ごほうび
A たいへんよくできました ペアで月面旅行
B よくできました コシヒカリ100kg
C 平均です 高級スノータイヤ4本
D この次はもっとがんばりましょう ひみつステッカー2枚セット
E なってません うでたてふせ100回

こらぁもうカンタンですよね。

と、この[成績テーブル]と、さっきの[名簿テーブル]は、[成績]というフィールドによって結び付けることができるんですね。
いや、実際に結ぶわけじゃないんですけど、ふたつのテーブルに共通のフィールドってことに、なりそうじゃないです?


でも、なんでテーブルをふたつに分けて考えるんだ???って、思った方、いらっしゃるんじゃないでしょうか。

別にいいんですよ。こんな感じで、[名簿テーブル]の中に、成績の「内容」や「ごほうび」のフィールドを追加しても。。。
[名簿テーブル]をデザインビューで開いて、ふたつフィールド名を追加入力すればいいんですよね。

でも、これって結局、なんかすごく無駄な入力することになりはしませんかねぇ。どうでしょう。
別にマチガイじゃないんですよ。ちゃんとデータは入力できますよね。
ただ、上のテーブルより、下のふたつのテーブルの組み合わせの方が、よりAccessの能力を生かすことができるはずなんです。

この違いにピンときたら、もうAccessを使いこなせたも同然。
この考え方こそ、リレーショナルデータベースの第一歩なんです。
でもこういうのは「ソフトの操作を覚える」ということとはちょっと違うお話なので、今はとにかく、テーブルの基本についてシッカリ抑えていってください。


さて、他にもテーブルに関する細かい操作や機能、たくさんあるんですが、とりあえずカッコはつきそうですね。
他にも見とかなきゃなんないオブジェクトがいろいろあるし、テーブルに関してはこのくらいにしときましょう。

で、次はというと、フォームについてちょっと見てみようと思います。

データシートビューでもデータの入力/表示ができますからね。
これでもういいや、という方もいらっしゃるんですけど、せっかくですからちょっと見栄えのいい、使い勝手のいい画面、作ってみましょうよ。ね。ね。