クエリとVBAのコードを編集する

先日、源泉所得税で86万円を超える場合の説明をしました。
そのとき掲載したクエリがとにかく長く、同じフィールドを幾つも使っています。

例えばこれをコピペで使おうとした場合、自分で設定しているフィールド名と違うとクエリが上手く
動いてくれません。

そんな時は、コピーの基となるクエリをコピーして、Wordに一旦貼り付けます。

続きを読む

最終仕入原価法を求めるクエリ

税法では在庫の評価方法は最終仕入原価法なので、その単価を求めるクエリです。

図のようにクエリの設定をします。

最終仕入日: DMax(“日付”,”Q入庫単価”,”花材NO=” & [出荷伝票].[花材NO] & “” & ” and ” & “日付<=# ” & [日付] & “#”)

最初にその商品を出荷した日に一番近い仕入日を求めます。近い仕入日はDMax関数を使って求めます。

続きを読む

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

データベースの基本16~リレーションシップの設定④

これをリレーションシップの設定に反映させます。

一見見ただけでは、どこの連鎖更新が設定されているのか?はわかりません。
そのときは結合している線をダブルクリックすると結合の情板がわかります。上の図ですと、

①得意先テーブルの得意先CDと納品書テーブルの得意先CDは参照整合性と連鎖更新
②請求書テーブルの請求書NOと納品書テーブルの請求書NO、納品書テーブルの納品
書NOと納品明細テーブルの納品書NOは、参照整合性と連鎖更新と連鎖削除の設定
をしています。
続きを読む

データベースの基本15~リレーションシップの設定③

③参照整合性・フィールドの連鎖更新あり
参照整合性にチェックを入れると、フィールドの連鎖更新とレコードの連鎖削除にもチェックを入れられるようになります。連鎖更新にもチェックを入れると例えばある得意先の得意先CDを変更した場合、すでに登録されている他のテーブルの得意先CDも同時に更新されるのが、連鎖更新です。
続きを読む