Accessで在庫管理をしようと作成中なのですが・・・入荷した時に数量を入力するフォームを作っているところで、つまづいています。
入力フォームはメーカーや分類を先にトグルボタンにて選択して、その抽出された中から商品名を選択、その際に自動的に商品IDが選択されるようにしています。
入荷フォームでの入力項目は商品ID、入荷数、入荷年月だけです。
入荷年月は自動で今月の値を代入してます。
どれも値要求を「はい」に設定してあります。
なので、たとえば、商品を選択後、商品IDが自動で入力された状態で、やはり別の商品だったということで選択しなおそうとトグルボタンなどを押そうとした際、入荷数に数字が入っていないので「Null値を入れることは出来ません」みたいなメッセージが出て操作不能になってしまいます。
かといって、値要求を「いいえ」に設定すると、間違った情報が保存されてしまう可能性が出てきます。
何か、対応策をご存知の方、お知恵を拝借願います。
一応、すで数時間挑戦してますが、現在進行形で試行錯誤中なので、自己解決してたらすみません(汗
No.1ベストアンサー
- 回答日時:
先ず、全体のユーザオペレーションのあり方を決められる必要があろうかと思います。
入庫伝票の入力途中で、以前のレコードに戻ることを許すのか否?
これを禁止し、行入力の完了を移動条件とした場合、ユーザの使い勝手は著しく悪化します。
入力途中の行を初期化させたり削除することを要件にするのもユーザは歓迎しないでしょう。
自由に移動出来ることが一番ではないでしょうか?
もちろん、これは出庫伝票その他にも共通する仕様の基本に関わる重要な問題です。
さて、[商品ID]決定時に入荷数を0にしておけば、この不具合は解消されるでしょう。
しかし、これも Null値を許容するのと50歩100歩です。
なぜなら、[商品ID]を再選択することなく伝票入力画面を閉じられることもあるからです。
ところで、自由に移動を許可すればゴミレコードが多発するとの心配もあるでしょう。
しかし、そういう事情で発生したゴミレコードは僅か1行のコードを書くことで伝票入力終了時に掃除することも可。
Private Sub Form_Close()
CNNExecute "DELETE FROM 入出庫伝票 WHERE Nz(入荷数)=0"
End Sub
もちろん、{ESC}{ESC} を送ったりレコードを初期化するコードを書いても構いません。
DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
が、これですと、[商品ID]を再選択しようと思ったが、実は勘違いだというケースへの対応の問題が残ります。
で、結局は、<自由に移動を許可するが一番>ということになると思います。
なお、CNNExecute 関数はADODB の Execute メソッドを使っている単純な関数です。
CNNExecute 関数がどうやったら使えるようになるか分からず四苦八苦しましたが、何とか解決しましたw
回答ありがとうございました。
No.2
- 回答日時:
>入荷数に数字が入っていないので「Null値を入れることは出来ません」みたいなメッセージが出て操作不能になってしまいます。
データのチェックが働いているので、動作としては良いことですね。
通常、そのような場合ESCキーを押して、編集状態を
キャンセルする、オペレーションで済むと思うのですが・・
入力し直す場合には、一旦ESCキーで処理キャンセルの操作方法では
問題ありでしょうか・・問題ないと思いますが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) accessでの請求管理について 2 2022/06/13 21:51
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- 一眼レフカメラ マップカメラのネットショッピング 1 2022/12/17 01:35
- Excel(エクセル) エクセルの表について 3 2023/04/14 18:00
- その他(プログラミング・Web制作) パイソンでのプログラミングについて 3 2022/08/11 20:31
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- Excel(エクセル) Excel 関数 vlookupなどの使い方について質問です。 シート1に品番、商品名、単価、発注条 6 2022/06/15 19:16
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) EXCEL関数LOOKUPとFILTERについての質問です 1 2022/12/21 05:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
至急!尿検査前日にオナニーし...
-
尿検査の前日は自慰控えたほう...
-
尿検査前日に自慰行為した時の...
-
首吊りどこ締めるの
-
変な話しになります。尿検査で...
-
白血球が多いとどんな心配があ...
-
今朝、毎朝の習慣でオナニーし...
-
1日前の検尿
-
射精をして1週間以内に尿検査を...
-
検便についてです。 便は取れた...
-
EXCELで条件付き書式で空白セル...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
男です。昨日の午後3時くらいに...
-
EXCELで式からグラフを描くには?
-
彼女のことが好きすぎて彼女の...
-
中出しをするとお腹が痛い・・・。
-
値が入っているときだけ計算結...
-
これって喉仏ですか? 私は女性...
-
EXCELの条件付き書式で数式を空...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
中出しをするとお腹が痛い・・・。
-
麻疹風疹の抗体検査結果につい...
-
エクセルでエラーが出て困って...
-
白血球が多いとどんな心配があ...
-
彼女のことが好きすぎて彼女の...
-
検便についてです。 便は取れた...
-
勃起する時って痛いんですか? ...
-
至急!尿検査前日にオナニーし...
-
納豆食べた後の尿の納豆臭は何故?
-
これって喉仏ですか? 私は女性...
-
EXCELで条件付き書式で空白セル...
-
精子が黄色?
-
小数点以下を繰り上げたものを...
-
値が入っているときだけ計算結...
-
口の中に黒い血の塊
-
健否~書類の書き方~
-
甲状腺が腫れているが血液検査...
-
はしかの抗体検査は何科の病院...
-
テスターで断線を調べる方法教...
おすすめ情報