<HOME  <お願い事項  <Access2000 TOP   <Access97 TOP   <サイト内検索
 MS-Access2002チョ〜入門部屋>基本をマスターしよう
  (←別ウィンドウでサブメニュー)



7.データシートビュー

さてー・・・。
テーブルの中にデータを入力していこう・・・・これはだいたい、「フォーム」って物を作って、そいつを通じて入力するように仕組みを作るもんかなーと思うんですが、今回はちょっと「データシートビュー」っていう状態も見てみましょう。
テーブルを作る作業っていうものは本来、データを入れておくための入れ物というか、骨組みを作ることで、言ってみれば骨組みをテーブルと呼んでるわけなんですが、MS-Accessの場合は、テーブルに「入力したり照会したりするための表示モード」がついてるんです。それをデータシートビューといいます。いや、これってけっこうお手軽で便利なんですよ。他のデータベースではこういうのはあんまりないかもしれないですね。

データベースウィンドウの中を見てみてください。

今作った「社員テーブル」、アイコンの形になって、出番を待ってますね。これ、「閉じてる状態」です。
じゃあ、テーブルを開いてみましょうか。ダブルクリックしてみましょう。

すると、こんな画面になったと思います↓

これが、データシートビューという状態です↑
表の形になってますけど、前にも申しましたように表計算ソフトじゃあありませんからね。

さてでは1件入力してみましょう。入力時の注意点としては、

  社員番号<必ず入力。主キーだから。
  入社年月日<半角のスラッシュかハイフンで区切って入力。

これくらいかなぁ。
まあ、とにかく、4〜5人分、入力してみましょうか。

どうでしょう?

もし、名前の入力とかで、「なんか、欄が狭いかも」と思ったら、ちょっと広げましょうか。
別に狭くて右端がちょんぎれて見えてなくても、データ自体はちゃんと入力されてるんですけどね。
上の図の、赤い丸印あたりを右にそっとドラッグしてみてください。列幅が広がると思います。

「ペンだこ」は、四角をクリックしてみてください。
チェックマークがついたり消えたりしますよね。ついてるときがYes(あるいはTrueあるいはonまたは-1)、消えているときがNo(またはFalseまたはoffまたは0)となります。

まあ、これでもそこそこ使えそうですよね。

テーブルの中へ入力されるデータは、ビジュアル的には「一番下の空の行」を使って入力します。でも、だからといってこのテーブルの中の一番びりっけつの行というわけではありません。
このテーブルは「社員番号」を主キーにしているので、MS-Accessはなんでも「社員番号」を基準に考えようとします。
なので、いったん閉じてもう一回開くと(開いている間は、データシートビューの表示の状態が更新されないのです)、主キー順に並び変わるのです。

だから、「3行目と4行目に1行挿入したいんだけど」という考え方は、データベースの世界にはほとんど存在しません
主キーのお話のときもちらっと触れましたが、「表全体を見て、上から4行目」とか、そういう考え方が抜けない人は、データベースはやめたほうがいいです。別に意地悪で言ってるわけじゃなくて、多分、利点が見つからないと思う。
あくまでも今4行目に見えている社員の情報は、「主キー順に並べてみたときに、たまたま4番目」に見えているだけであって、4行目にあるわけじゃあないのです。

この時点では・・・1行入力したからといって保存するかどうかって、聞かれないですよね。
テーブルの中に入力されていくデータは、入力して、Enterキーを押すとかして次の行に移ったりテーブルを閉じたりした瞬間に、自動的にどんどん保存されていくのです。表計算ソフトとは違いますよね。
この表全体で1つのデータの塊なのではありません。1行1行独立して存在しているので、保存も1行ずつ行われます。

1行、入力や変更をしている最中、レコードセレクタ部分にエンピツマークが出ます。

この間は、この行は現在使用中/新規入力中/変更中ということになります。
でも、見た目は1行増えてますが、まだ正式にテーブルの中に1行追加されたことにはなってないんです。微妙ですね。
Escキーを何回か押すと、入力途中のその行がなくなります。エンピツ取り消しです。

1行追加し、たとえばEnterキーを押すなどして次の行にカーソルを移動させたり、テーブルを閉じたりすると、エンピツマークが消え、正式に1行追加されたことになります。
細かいことですけど、こういうのを理解しておくと、あとあと楽だと思います。
ぐちゃぐちゃになっちゃってもいいですから、とにかくいろいろ入力して試してみてください。
画面上のツールボタンとかをうまく使えば、入力した後アイウエオ順に並べ替えてみたり、名前で検索したりすることも可能です。
また、「フィルタ」という機能を使って、絞込みをすることもできます。案外これ、使えますよ。

いわゆるふつうの、どこにでもある検索機能です。けど、意外と便利ですよね、これ。

テーブル1個作ってデータシートビューで入力して、「○○さんの時給はいくら?」って聞かれたときに検索機能を使って探す・・・、とか、そんな感じでも、十分機能するかなって思います。



また、「フィルタ」機能も、たとえば「クラゲ組の人は、何人いるかしら?」なんてときに、クラゲ組っていう文字のところを何行目でもいいのでクリックしておいてから、「フィルタの選択」ボタンをクリックすると、

クラゲ組の人だけの表示になります。

元に戻したいときは「フィルタの解除」ボタンをクリックしましょう。
これもなかなか使えますよ。

でもこれだけじゃあ、はっきりいってMS-Accessを使ってるメリット、ないと思うから・・・。
やっぱり、Access使うなら、フォーム作って、レポートを作って、クエリを駆使して、んでもってマクロやモジュール等々を使って使いやすさを追求して・・・って、ひととおりいろいろ作りこんでいきたいもんです。

あと、「間違えちゃった。1行削除したい」っていう場合は、左端のレコードセレクタをクリックして、Deleteキーを押しましょう。

こんなメッセージが出てきます。

1行単位で独立して存在しているということもあって、一度削除すると元に戻すことはできません。
と、言う意味のメッセージですね。
削除するときは慎重に・・・。
でも、ふつうは、あんまり「削除する」って、しないかもしれないですね。

残しといて、見えなくする、検索しても出てこなくする、とか、そういう工夫をしたりします。
こういうのは後々お話できるかなって思いますので、またの機会に・・・。

最後に、ちょっとだけ補足です。
これも、いうなればデータベース用語なんですが、データシートビューで見たところの、「1行1行」のことを「レコード」と呼びます。「1列1列」のことを、「フィールド」と呼びます。

このテーブルには今、6フィールド、16レコード入力されてる、っていうことになります。
(みなさんも、なんか適当に、何件か入力しておいてくださいね)

いままでは、全部ひっくるめて「データ」と呼んじゃってたんですが、これからできるだけこの言葉を使っていこうかなって思います。こういう言葉にも、少しずつ慣れていってください。どうかひとつ。
んじゃ、「社員テーブル」のウィンドウは閉じましょう。
「保存しますか?」ってメッセージが出てくる方もあるかもわかりません。この場合の「保存」は、さっき、列の幅変えたでしょ。「名前」の列、広げましたよね。次このテーブルを開くときも、あの列幅で開きます?っていう意味の「保存」なんですね。
「はい」の方クリックしましょうかね。

んではっ、次は、「クエリ」っていうオブジェクトについてお話しますよ〜誰がなんと言おうと。