前回までで、システムのユーザーフォームの準備が整いました。
この記事では、データベースを設計・作成していきます。
VBA在庫管理システムVer01
データベースの設計
データブックにデータ保管用のシートを作っていきます。
ここでは、一般的なデータベースソフトではなく表計算ソフトのエクセルを使うことに留意してください。エクセルは、テーブル(シート)のデータ連結が苦手ですので、テーブルの分割は極力さけ、管理主体で設計していきます。
M_商品
M_商品シートを作成し、商品マスタデータを作ります。
後方に在庫情報が取り込めるようにします。
商品ID 商品名称
登録日 更新日
発注先 発注単位 梱包数
最大在庫 発注点 棚位置
棚卸日 棚卸数
出庫済み 出庫予定 入庫済み 入庫予定
現在在庫 有効在庫 発注フラグ
削除
主キー(重複しない、一意の値)として、商品IDをおきましたが、主キーの特性を持っていれば、商品コード等でもいいです。
また、VBAでIDに連番をふりやすくするため、論理削除を採用し削除フィールドを設置しています。
T_入出庫
T_入出庫シートを作成し、商品入出庫データを作ります。
入出庫ID
入出庫日 商品ID 商品名称
入出庫数 入出庫内訳 入出庫区分
削除
M_商品シートと同様に、内部IDとして入出庫IDをおき、削除フィールドも設けました。
データベースの作成
M_商品シート
商品をペットボトルの飲料品として、M_商品にサンプルデータを登録しました。
1.緑茶_500、2.紅茶_500、3.麦茶_500
T_入出庫シート
ヘッダー部のみ作成します。
データベースの保管位置設定
データベースの保管位置を設定し、標準モジュール:設定 の中で変数に取り込みます。
今回はデスクトップに在庫管理フォルダを作成し、データベースを保管します。このデータベースのフルパスを変数=データ位置に取り込みます。
Option Explicit Public 画面高さ As Long Public 高さ割合 As Double Public データ位置 As String ←ここを追加 Sub InitialSetting() 'サイズ調整 ActiveWindow.WindowState = xlMaximized 画面高さ = Application.Height 高さ割合 = 0.9 ActiveWindow.WindowState = xlMinimized 'データ位置の設定 ←ここを追加 ***は任意 データ位置 = "C:¥Users¥***¥Desktop¥在庫管理¥" 'メニュー画面の表示 frmMainMenu.Show End Sub
データベースの作成と、VBAへの取り込みの準備が整いました。
次回から、商品マスタ画面を作成していきます。
www.minizaiko.com