請求済みチェックボックスを作成するには

第3章 クエリーでデータの抽出・計算を行う
交通費精算のテーブルが作成できました。
27
請求済みチェックボッ
クスを作成するには
クエリーを使って交通費精算を行うため
チェックボックスの作成
Excel にはなかったフィールドを追加しま
3
データシートビューに
切り替える
に、行ごとに、請求済みかどうかを判別で
5
チェックボックスが作成された
請求済みのチェックボ
ックスが作成された
きるようにしましょう。このためには、
データベースウ
ィンドウに戻る
q ここをクリック
す。
テーブルを保存する
1
フィールドを追加する
2
データ型を
[Yes/No型]にする
qtキーを押す
フィールド名が付いた
請求したかどうか区別する
チェックボックスを作る
ここをクリック
w[はい]をクリック
4
データベースウィンドウが表示された
データシートビューに
切り替わった
データシートビューに切り替わった
w ここをクリック
データ型を変更する
e[Yes/No 型]をクリック
間違った場合は?
qここをクリック
三角マークが
表示された
作成したチェックボ
ックスを確認する
追加するフィール
ドの名前を付ける
ここをクリックして、
画面を切り替える
間違えてビューを切り替えてしまったときは、再
度
ボタンをクリックすると、元のデザインビュー
に戻って操作ができます。
Yes/No 型をうまく使う
H
I
N
T
!
追加フィールドの値
w「請求済み」と入力
82
テーブルに新しくフィールドを追加すると、オートナン
バー型であれば通番がふられ、Yes/No型は「No」が設
定されます。それ以外のデータ型では、Null(ヌル)値
と呼ばれる、データが入力されていない状態になります。
数値型の場合、Null 値と0 とは意味合いが異なります。
Null値は0も入力されていないという意味です。
Access のデータ操作は行単位を基本とします。
YesかNoかの指定で済むため簡単です。
このため、大量のデータを操作することが簡単に
また、この例のように、すでに処理したレコード
行えます。その大量のデータの中から、自分に
のチェックなどに使うと、Access のデータ操作
必要なデータを選び出すときは、条件を指定し
の幅が広がります。
てフィルタを実行するわけですが、なれないうち
は条件式の設定は面倒なうえ、複雑な条件の設
定は間違いも多くなります。
このような場合、Yes/No 型のフィールドは、
ここにマウスポインタ
を合わせてクリック
チェックの付いている
状態が「Yes」となる
83
第3章 クエリーでデータの抽出・計算を行う
テーブルができ上がりました。これからは、
28
特定のフィールド
だけ表示するには
実際にデータを操作する方法を説明しま
選択クエリー
す。Excel での「列の非表示」にあたりま
す。まず、選択クエリーを使ってテーブル
の特定の列だけを表示する方法を説明しま
4
必要なフィールドを追加する
[利用路線]
[単価]
[回数]も表示させる
qc キーを押しながら[利用路
線]、
[単価]
、[回数]をクリック
3
クエリーを作成する
いつ、どの路線を使ったか、単価と回数はいくら
かという情報だけ表示させるためにクエリーを作る
q[クエリー]をクリック
フィールドを追加する
[交通費]のテー
ブルが追加された
I
N
T
!
クエリーの見かけは
テーブルと変わらない
クエリーを開くとテーブルと同じようにデータが表で表
示され、データの修正や追加・削除を行うことができ
ます。このクエリーの結果で表示されるものをダイナセ
ットと呼びます。
クエリーを使うと、列の選択や並べ替えの情報はクエ
リー自体に定義されます。いくつもの列の表示パター
ンや並べ替えを別のクエリーとして保存すれば、Excel
のように列の非表示をいちいち設定し直さなくても一
つのテーブルをいくつもの「見かけ」で表示することがで
きます。
す。
1
H
q[閉じる]をクリック
wここまでドラッグ
w[新規作成]をクリック
6
必要な列だけが表示された
選択したフィールドだけ表示された
表示させるフィールドを追加する
e[デザインビュ
ー]をクリック
w[利用日付]をクリック
eここまでドラッグ
5
r[OK]をクリック
2
クエリーを実行する
ここをクリック
使用するテーブルを選択する
[交通費]になっていることを確認
◆ダイナセット
[追加]をクリック
簡単なクエリーを積極的に活用する
◆QBE グリッド
◆列のセレクタ
間違った場合は?
間違って違ったフィールドを設定したときは、QBEグ
リッドの間違ったフィールドの[列のセレクタ]をク
リックしてd キーを押して削除し、再度設定して
ください。
84
追加された
テーブルの必要なフィールドだけを選択するクエ
列の表示順を変更することもできますが、これで
リーは非常に単純ですが、実はこのタイプのクエ
は次にテーブルを操作するときに、変更を元に戻
リーが一番便利なクエリーであるといえます。テ
すわずらわしさがあります。このような場合、ク
ーブルにはいくつものフィールドがありますが、
エリーを使えば簡単に必要な列だけを表示させ、
常にすべてのフィールドの内容を見たいわけでは
内容を確認したり、修正することができます。
ないでしょう。テーブルのデータシートビューで
85
第3章 クエリーでデータの抽出・計算を行う
2章で説明したフィルタ機能はその場限り
29
特定日より前のデー
タを表示するには
のものでした。選択クエリーを使うと、特
フィルタの設定と実行
ったレコードの抽出方法を説明します。
3
デザインビューに切り替える
4月末日までのデータを表示する
H
定の条件に一致するレコードだけを表示す
2
抽出条件を設定する
I
N
T
!
「∼かつ∼」を指定するには
ることができます。ここではクエリーを使
ここをクリック
4
1
抽出を実行する
複数の条件を「∼かつ∼」の形で指定するには、それ
ぞれの条件をQBE グリッドの同じ行に書きます。
「97 年4月末
日まで」かつ
「千代田線」
のデータが抽
出される
抽出結果を確認する
クエリーに切り替わった
q ここをクリックし
て画面を切り替える
「∼または∼」を指定するには違う行に書きます。
「97 年4月末
日まで」また
は「千代田
線」のデータ
が抽出される
4月末日までのデータを取り出すには「5月
1日より前」という抽出条件を設定する
デザインビューに切り替える
4月末日までのデータが抽出された
5
デザインビューに戻る
デザインビューに切り替わった
「<#97/05/01#」と入力
q ここをクリック
デザインビューに切り替わった
w ここをクリック
w ここをクリック
H
I
N
T
!
クエリーで並べ替えができる
間違った場合は?
クエリーの結果が思った通りにならない場合は、QBE
グリッドの設定に原因があります。
ボタンをクリ
ックし、デザインビューに戻りQBE グリッドを正しく
設定してください。
86
クエリーの結果を並べ替えるには、並べ替えの基準と
なるフィールドの[並べ替え]をクリックし[昇順]、
[降順]を指定します。クエリーの結果であるダイナセ
ットの表示順は、元のテーブルの主キーの順序となる
とは限らないので、抽出結果をより見やすくするために
は、並べ替えの指定をしておくようにしましょう。
[並べ替え]のここ
をクリックして並べ
替え順を選択する
クエリーはトライアンドエラーで使う
複雑な条件で設定するクエリーを作ることは、
れば、単純な条件の組み合わせにしか過ぎませ
データベースによほどなれた人間でも難しい作業
ん。この単純な条件を一つ一つQBE グリッドに
です。このような複雑な抽出や並べ替えを行う
設定し、設定した結果を
クエリーを作るときは、デザインビューで表示し、
実際にQBE グリッドに設定した条件がクエリー
トライアンドエラーで少しずつ作業すれば比較的
としてどう解釈されたかが理解でき、最終的に
簡単に間違いなくできます。
正しいクエリーが作成できるようになります。
ボタンで確認すれば
複雑な抽出条件であっても、細かく分けて考え
87
第3章 クエリーでデータの抽出・計算を行う
Excel ではセルに数式を設定することで計
30
項目ごとの合計を
出すには
式ビルダ
算を行います。Access では、クエリーに
同日に利用した路線の単位で
合計を出す
同日に利用した路線単位の合計を求める
H
式を作成する
「演算フィールド」を作り、レコード内で
の計算を定義するかたちで項目ごとの合計
を計算します。ここでは単価×回数の合計
を計算してみましょう。
1
4
2
[単価]×[回数]という式を作成する
q[単価]をクリック
[値]が選択され
ていることを確認
I
N
T
!
演算フィールドを使って
和歴を表示する
演算フィールドを利用すると、日付を和歴で表示する
ことができます。利用日付を「平成 00 年 00 月 00 日」
の形式で表示したいなら、演算フィールドの式に
「format$([利用日付],"gggee 年 mm 月 dd 日")」と指定
します。(レッスン^0 参照)
式ビルダを表示する
「日付:Format$([利用日付],"gggee年mm月dd日")」と入力
合計を求める式を簡単に作成するために式ビルダを使う
qここを右クリック
w[ビルド]をクリック
w[貼り付け]をクリック
5
式を完成させる
選択したフィール
ドが貼り付いた
ここをクリックして
画面を切り替える
H
I
N
T
!
長い式の入力には[ズーム]が
便利
3
日付のデータが入力されて
いるフィールドを選択する
漢字以外はすべて半
角文字で入力する
演算記号を
貼り付ける
式ビルダを使って
式の作成を開始する
クエリーを実行するとこのよ
うに和暦で表示される
式ビルダが表示された
q[テーブル]
をダブルクリック
6
データベース内にある
テーブルが表示された
演算フィールドを設定するような場合、設定した式が
すべて表示されないので確認が大変です。このような場
合はショートカットメニューにある[ズーム]を使えば、
別ウィンドウで表示・編集できます。
[単価]×[回数]
という式が完成した
qここをクリック
演算記号が
貼り付いた
使用するテーブルを選択する
w[回数]
をクリック
式が完成した
[OK]をクリック
e[貼り付け]
をクリック
w[交通費]をクリック
Shortcut
フィールド内で表示しきれ
ない式を見ることができる
88
s +™
ズーム
次のページに続く
89
第3章 クエリーでデータの抽出・計算を行う
項目ごとの合計を出すには
30
9
式ビルダ
7
8
式を確定する
式ビルダが閉じた
式ビルダで作成した式が
フィールドに表示された
計算する
H
I
N
T
!
演算フィールドを持つクエリー
の結果は変更できない
フィールド名を変更する
ここをクリック
フィールド名を「金額」とする
10
クエリーの結果であるデータシートビューはテーブルと
同じように変更できますが、演算フィールドにデータを
入力することはできません。しかし、計算の元となるデ
ータは変更できるので、内容を変更するときは、計算
元となるデータを変更してください。
計算結果が表示された
11
金額のフィールドに計
算結果が表示された
デザインビューに戻る
同日に利用した路線
の単位で合計が出た
ここをクリック
q ここを
クリック
w「式1」を「金
額」と書き替える
デザインビューに戻った
zキーを押す
作成した式を確定する
フィールド名が「金額」になった
H
I
N
T
間違った場合は?
!
「指定した式の構文が不正です」というメッセージが
表示されるときは、フィールド名が正しいか、かっこ
などの記号が正しく半角で入力されているかをチェッ
クしてください。
演算フィールドの名前
演算フィールドは次の形式で指定します。
フィールド名:計算式
計算の方法、つまり式は「:」のあとに指定し、指定し
た式の計算結果が、クエリーの列の値となります。
「:」の前には、フィールド名を指定します。この名前が
計算結果を表示する列の見出し、つまり列名としてデ
ータシートに表示されます。
ここに指定する名前はフィールド名ですから、この名前
は当然、クエリーのもととなるテーブルのフィールド名
と異なる名前を指定しなくてはなりません。また同じフ
ィールド名を同一のクエリー内に作ることはできないた
め、複数の演算フィールドを作るときは、それぞれに設
定するフィールド名を違うものにしなくてはなりませ
ん。
90
間違った場合は?
演算フィールドの表示が「#Error」と表示される場
合は、設定した計算式が、例えばテキスト型のフィー
ルドに足し算をしている、など指定が間違っています。
デザインビューに戻り、エラーが表示された演算フィ
ールドの式をもう一度チェックして、演算として間違
いがないか、計算できないフィールドを指定していな
いかをチェックし、また、計算元のテーブルの対象と
なるフィールドの値に、割り算の除数に0 が入力され
ているなどの、おかしなものがないかも調べてくださ
い。
計算結果の表示にはクエリーを使う
Excel での計算は、計算結果を表示するセルに式
律に演算が行われるため、このレコードだけは計
を設定することで行いますが、Access での計算
算方法を変える、などという操作はできません。
はクエリーに演算フィールドを作って表示しま
クエリーで表示されている計算結果は、テーブル
す。このため、データ量が多くなったとき、いち
のように値が入力されているわけではありません
いちすべてのセルに式を設定する、といった面倒
から、計算の元となっているフィールドの値を変
はありません。その代わり、レコードに対して一
更すれば計算結果も変更されます。
91