- 在庫数の算出
- 11
最新トピック
1
1 ヶ月前
排他制御 1 ヶ月前
2
1 ヶ月前
Hatena様にご質問 1 ヶ月前
6
4 ヶ月前
モジュールでカレントフォームのコントロールを使うには 4 ヶ月前
7
4 ヶ月前
日付のテキストボックスからフォームが開けません 4 ヶ月前
9
4 ヶ月前
レポートにおける数値の間隔を広げる方法 4 ヶ月前
12
4 ヶ月前
リストボックスから複数選択しそれをテーブルに格納したい 4 ヶ月前
タグリスト
Markdown テーブル生成
Accessのテーブルやクエリのデータを貼り付ける場合は下記で、Markdown書式のテーブルに変換して貼り付けてください。
その後いかがでしょうか。
レポートで「集計実行」を使うと簡単だと言いましたが、実はこの方法には問題点があります。
とのことだったのでとりあえず形にしてから再修正を、と思っていましたが、(自分の方法のままでは)形にならなさそうな気がしてきたので追記を入れておきます。(ホントはQA形式で進めていきたかったのですが)
まず、レポートの表示を次のように考えることとします。
2019年12月
次に、レポートに表示する月はフォーム上で入力することとします。
・フォーム名:フォーム1
・フォーム1上のテキストボックス:表示月
表示月には表示したい月の1日を入力することとします。(2019年12月のレポートを表示したい場合は2019/12/1)
当月入出庫のデータ、当月在庫用のデータを作る
Q入出庫明細のクロス集計クエリを元に次のクエリを作成します。
Q当月入出庫
Q当月まで入出庫
それぞれ必要に応じた日付の範囲(where条件)で出庫、入庫を合計します。
具体的にはフォーム1の表示月に「2019/12/1」と入っていれば
上は「
Between #2019/12/1# And #2019/12/31#」、下は「
<= #2019/12/31#」となるような条件になっています。
Q当月まで入出庫では必要に応じて製品の情報を加えておきます。
クロス集計クエリを使う場合、フォーム上の値を使うためにはパラメーターの設定が必要です。
SQLビューであれば一番上に入っている1行ですが、デザインビューであればデザインビュー上側の適当な位置で右クリックして表示されるポップアップメニューから「パラメーター」を選択して設定できます。
レポート用のソースを作る
上の2つのクエリを基にさらにクエリを発行します。
ところどころにあるNz関数はデータがなかった時に別な値に置き換える関数です。
データがなかった時の値は
NullになりますがNullが含まれた計算は結果がNullになるという特性がありますので、例えば12月の出庫がない製品の在庫を計算しようと在庫+入庫+出庫(Null)を単純にしてしまうと計算結果がNull(画面上では表示なし)になってしまいます。このクエリを表示すれば、上に挙げたレポートの表示形式のデータが表示されますので、このクエリを基にレポートを作成すれば完成です。