ous">

小さな在庫管理

在庫管理導入からシステム作成まで詳細解説!

商品入庫画面の入力支援作成 [VBA在庫管理システムVer01#16]

前回、商品入庫画面の帳票出力部分を作成しました。

この記事では、商品入庫画面の入力支援を作成し、完成させます。


VBA在庫管理システムVer01

商品入庫画面の入力支援作成

ユーザーフォームの入力支援機能は様々ありますが、最低限、タブ移動と入力モードの設定はしておきましょう。
 

タブ移動の設定

入力支援機能として、タブ移動の順序を設定していきます。
VBEで [表示] - [タブオーダー] をクリックすると、タブオーダー画面が表示されます。リストの上から順に、タブ移動が設定されます。ラベルはタブが止まらないので、無視します。


フォーム frmItemInputを選択し、タブオーダー画面を表示し、画面全体のタブ移動を設定します。

フレーム fraItemSelect を選択し、タブオーダー画面を表示し、フレーム内のタブ移動を設定します。

詳細情報は参考データを表示させるだけで、入力はありません。
フレーム fraDetailInfo を選択し、タブが止まらないように、プロパティウィンドウで詳細設定します。

タブストップの設定

フレーム fraInput を選択し、タブオーダー画面を表示し、フレーム内のタブ移動を設定します。

フレーム fraInputList を選択し、タブオーダー画面を表示し、フレーム内のタブ移動を設定します。

修正ボックスの商品ID および 商品名称テキストボックスには入力はないので、タブが止まらないように、プロパティウィンドウで詳細設定します。また、入力も規制しておきます。

タブストップの設定
 

入力モードの設定

入力時に、日本語を入力したいのに入力モードが半角英数だったりすると、入力モードを変更する手間が発生します。
VBAでは、初期値が0-fmIMEModeNoControl(前の入力モードのまま)となっています。

そこで、日本語入力の時は4-fmIMEModeHiragana(全角ひらがなモード)、英数字入力の時は8-fmIMEModeAlpha (半角英数字モード)にプロパティウィンドウで詳細設定します。

日本語入力
IMEMode

英数字入力
IMEMode
 

商品入庫画面の課題等

ここまで、商品入庫画面を作成してきましたが、運用時に課題となりそうな項目を記しておきます。
※この解説記事で作成した画面には、対策を加えていません。


1.修正可能項目が分かり難い

修正ボックスに表示された項目の中で、商品IDと商品名称が修正できないのは、作成者にしかわかりませんね。

対策方法の1つを紹介します。
選択ボタンがクリックされ、修正ボックスに表示される時に、修正可能項目のボックスのみ色がけします。
リセット時には初期値に戻す動作を入れておくといいでしょう。

また、逆に修正不可項目をグレーアウトしてもいいでしょう。

他にも対策方法はあるとおもいますので、検討して見てください。画面設計自体も、要検討です。


2.マジックナンバー

入庫リストのリスト項目について、列挙型変数を宣言しませんでした。なので、修正ボックスに展開するコードにマジックナンバーが残っています。

入庫リストの表示項目変更などの改修時に手間が掛かる恐れがあるので、列挙型変数を宣言して、コードを改修しておくといいでしょう。

 

これで、商品入庫画面が完成しました。
次回から、商品出庫画面を作成していきます。
www.minizaiko.com