カテゴリー別アーカイブ: クエリ

データベース基本~まとめ

今までAccessデータベースの基本を、テーブルの作成からリレーションシップの設定まで
まとめてきました。
ここまでは簡単に言うと、データを入れる箱を用意したにすぎません。ここからその箱に
データを入れていきますが、当然テーブルに直接データを入れるというわけにはいきません。
(もちろんテーブルに直接入れるときもありますが、まれです。)

データの入力を効率的に行うために、通常フォームを作ります。

フォームに入力したデータを出力するときは、レポートから印刷します。

フォームとレポートを作るためには、クエリという機能を使います。
クエリを使うことでテーブル間のデータを効率よくやり取りすることができます。

例えば、納品書を例にとると、
まず、得意先を選択します。
これは納品書に得意先CDを入力すると、それに該当する得意先名と住所等の情報を
得意先テーブルから取得します。

商品についても、納品明細に商品CDを入力すると、商品テーブルからその商品CDに対応
する商品名と単価等が表示されます。

納品明細に数量を入れると、単価×数量で金額を計算します。これもクエリを使います。

月末に締めて請求書を発行するときも、更新クエリと追加クエリを使って請求を締切ります。

データベースを作るとき、どれだけ使い勝手のいいデータベースができるかどうかは
クエリの使い方にすべてかかってきているといっても過言ではありません。

クエリを使いこなすことができれば、AccessVBAを知らなくても立派なデータベースを
組むことができます。

この先のクエリの設定については、
2016/2013/2010/2007対応 Accessクエリ ビジネス活用事典
を是非ともご参照ください。

本を出版した関係で、法律上同じ内容をネットで公開することができません。
事典と称していますが、Accessクエリを一から勉強できるように、難易度も低いテーマから
高いテーマの流れになっております
。すべてのTipsについてサンプルファイル付きです。

================================================
明日は、掛川新茶マラソン。今季最終戦です。
自己ベストが出るように、頑張ります。

本日も最後までお読みいただきありがとうございます。

Accessで名刺管理~訪問日の間隔を求める③

訪問の間隔が必要な期間を過ぎているかどうかの判断をします。

最後に次のフィールドを作ります。

要否: IIf([間隔]>=[最低訪問間隔],”○”,”×”)

あとはこの要否のフィールドをフォームに表示させます。
デザインタブの既存のフィールドの追加をクリックします。
2809083
続きを読む

Accessで名刺管理~訪問日の間隔を求める②

間隔を求めたら、取引先のランクごとに決められた間隔通りに訪問できているか
自動で判別できるようにします。

最初にテーブルに取引先をランク付けします。
名刺データテーブルにランクというフィールドを作ります。
フィールドサイズは2で十分です。
2809071
このフィールドに得意先のランクをAからDまでで入れていきます。
続きを読む

Accessで名刺管理~訪問日の間隔を求める①

活動記録から本日からその得意先に最後に訪問した日をもとめて、
その差の日数を求めます。

最後の訪問日と間隔を求めるクエリです。
2808051
まずはDMax関数で得意先毎の最後の訪問日を活動記録のデータから求めます。
次にDatediff関数を使って、今日(date())との差を求めます。
dateの()は必ず付けてください。
続きを読む

クエリ、フォーム、レポートを更新した場合

クエリ、フォーム、レポートを更新した場合、そもそもAccessデータベースのファイルが一つで
完結している場合は、そのままでいいのですが、
例えば他社がAccessデータベースを製作し、違うPCで違う人が使う場合、
どこかを直したり、新規にフォーム等を作った場合は、その修正等した部分を
実際に使っているAccessデータベースに反映させる必要があります。
その方法を解説します。

最初に更新した元のデータベースを開きます。

更新等をしたクエリ等(今回はフォーム)を右クリックし、
エクスポート→Accessを選択します。
2806011
続きを読む

勤務管理表を作る~休日残業の計算

日曜日は休みたいところですが、日曜日に出勤してくれた時に給与に色を付ける
ことがあるかと思います。

今回は日曜に出勤した場合は通常の給与に0.25倍を乗せた金額で給与計算させます。

最初に出勤した曜日が日曜日かどうかを判定させるために、クエリに曜日を表示
させます。

曜日: Format([日付],”aaa”)
続きを読む