nara
fa4a358bf6
2021/05/19 (水) 17:04:08
ありがとうございます。
情報が不足しており申し訳ありません。
D1~ 日付に見立てたフィールドで~31まで用意し、別のフィールドで月、年を用意をしています。
ユーザとしては 入力フォームで
製品ごとに ある年月の 1日~31日 フィールドへ入力する形にしています。
入力したデータは 別のテーブルで日付に変換して 日付順に所要展開できるように考えています。
クロス集計クエリを逆にしている形です。
ご指摘があったように A,Bが同じ部品であることをバージョン情報として持たせるようにしたいと思います。
やはり、クエリでの計算は難しく
バージョン管理品 の場合は 変更順に Aが0となった場合は、Bから引くといった
VBAでの処理が必要と理解しました。
通報 ...
D1~ のテーブルは入力用の一時テーブルで、入力後、縦に展開する正規化されたデータに変換してテーブルに格納するということですね。
レコード間を順に集計していく処理(連番とか累計)はクエリは苦手です。複雑かつ重い処理になりがちです。特に今回の安形だとバージョンがあったりとより複雑になります。
VBAでレコード移動しながら処理していくのが高速かつシンプルにできます。
下記に、連番をクエリまたはVBAでする場合のサンプルがありますので、参考になると思います。
グループ毎連番を自動入力する関数 - hatena chips
お世話になります。 はい、
D1~ のテーブルは入力用の一時テーブルで、入力後、縦に展開する正規化されたデータに変換してテーブルに格納するということですね。
上記の通りになります。
hatena様の 累計値をテーブルに自動入力する関数 を使用させていただき
画像のような 所要量計算テーブルで所要量を計算し、累計残高としています。
製品のマスタとしては、 カレー・肉じゃがに使う じゃがいもは 代替品でOKとした マスタテーブルを持ち、
変更順をデータとして持たせるとします。
このとき、消費計画のテーブルでは
メークイン が0になったら 男爵イモ の在庫を使う ・・ のようにしたいと考えております。
累計処理で計算すると、 まだ 男爵イモを使用しなくても良い 時でも 引いてしまうため
この処理について良い案がないか というご相談になりました。
イメージばかりですみません・・。