VBA開発環境設定と在庫管理プログラム作成 【VBA在庫管理#01】

Excel VBA 部品在庫管理アイキャッチ画像部品在庫管理

どうもoReです。

バーコードリーダーを使って、部品の在庫管理をExcel VBA(マクロ)で作っていこうと思います。

 

構想として

・バーコードリーダーを使用して、『ピッ』出庫→在庫数を-1する。

・バーコードリーダーを使用して、『ピッ』入庫→在庫数を+1する。

はい、ものすごく単純なものです。

 

それでは部品在庫管理プログラムを作っていきます。

ちなみに、現在こんな感じ↓

Mainに部品編集表示ボタン挿入

現在進行形で作りこみ中!!

データベース作成

・項目として、『部品管理№』『バーコード』『メーカー』『品名』『型式』『在庫数』

注)項目バーコードの所は、実際にバーコードを読み込んで入力します。

・各項目を適当に入力して、シートの名前を『データベース』に変更します。

Excel画像001

 

 

        oReびっくり
えっ? バーコードリーダーを持っていない!?
だ・と・・・

安心してください、普通持ってません(笑)

 

・とりあえず、バーコードデータとして『ore1』『ore2』『ore3』と入力しましょう。

Excel画像002

 

データベースが出来たので、いよいよオレグラミングの時間です。

注)プロのグラマーな方は、生暖かい目で見守っていただけると幸いです(笑)

 

開発環境設定

・赤枠のタブ上で右クリ→リボンのユーザー設定をクリック

Excel画像003

 

・開発タブにチェックを入れて→OK

Excel画像004

 

・開発タブが表示されるので、開発タブ内のVisual Basicをクリック

Excel画像005

無事にVisual Basic Editorが起動しましたか?
これであなたも、オレグラマーの仲間入りです。
おめでとうございます!!

 

初めてのプログラミング

では、プログラミングしていきましょう。

・赤枠のExcelマークをクリックすると、Excel画面に戻ります。

Excel画像006

 

・デザインモード→挿入→コマンドボタンをクリック

Excel画像007

 

・図形を挿入するように、ドラッグしてコマンドボタンを挿入します。

・挿入したコマンドボタンをダブルクリックします。

Excel画像008

 

・こんな画面出てきました?
注)背景色・文字色が違うのは、気にしないでください。

Excel画像009

 

プライベート サブ コマンドボタン1_クリック()

エンド サブ

 

なんとなくわかります?

Private Sub CommandButton1_Click()
  ↑
この間にプログラムを書きます。
  ↓
End Sub

コマンドボタン1をクリックするとプログラムが動く…みたいな感じでOK。

 

試しに下記のように入力してみてください。

Private Sub CommandButton1_Click()
  Range("A1") = "こまけぇこたぁいいだよ!!"
End Sub

 

・Excelの画面に戻り、デザインモードが解除されている事を確認して、
コマンドボタン1をクリックしてみましょう。

Excel画像010

セルA1に『こまけぇこたぁいいだよ!!』と入力されましたか?

oReのぞき見

在庫管理入出庫プログラミング

それでは、在庫管理入出庫のプログラムを書いていきます。

・コマンドボタンをもう一つ挿入します。

・コマンドボタン1を出庫とし、コマンドボタン2を入庫とします。

Excel画像011

 

・下記のように入力してください。

Private Sub CommandButton1_Click()
  If Range("A1") = "ore1" Then
    Range("G6") = Range("G6") - 1
  ElseIf Range("A1") = "ore2" Then
    Range("G7") = Range("G7") - 1
  ElseIf Range("A1") = "ore3" Then
    Range("G8") = Range("G8") - 1
  Else
    MsgBox "部品登録されていません。"
  End If
End Sub
Private Sub CommandButton2_Click()
  If Range("A1") = "ore1" Then
    Range("G6") = Range("G6") + 1
  ElseIf Range("A1") = "ore2" Then
    Range("G7") = Range("G7") + 1
  ElseIf Range("A1") = "ore3" Then
    Range("G8") = Range("G8") + 1
  Else
    MsgBox "部品登録されていません。"
  End If
End Sub

 

入力したら、Excel画面に戻ります。

 

セルA1にバーコードデータである『ore1』を入力して、コマンドボタン1を押すと
アサヒスーパードライの在庫数が-1(出庫)しますか?

 

セルA1にバーコードデータである『ore1』を入力して、コマンドボタン2を押すと
アサヒスーパードライの在庫数が+1(入庫)しますか?

 

 

Excel画像012

同様に、セルA1に『ore2』『ore3』も入力して確認してみてください。

ちなみに、セルA1に何も入力しない
もしくは、ore1,2,3以外のデータを入力しコマンドボタンを押すと、
『部品登録されていません。』とメッセージが出てきますか?

 

・なんかエラーが出た場合、デバッグをクリックしてください。

Excel画像013

 

ここ、ちょっとおかしくね!?と教えてくれます。
修正したら、リセットボタンをクリックしましょう。

Excel画像014

 

保存方法

最後に、ブックの保存をしましょう。

・ファイルの種類を『Excel マクロ有効ブック』に変更し保存してください。

Excel画像015

 

まとめ

どうでしたか? 楽しくなかった!?
まあ、少しでもVBAに興味をもってもらえれば幸いです。

バーコードリーダー画像

次回 在庫管理入出庫プログラムの説明などなど

ExcelVBA部品在庫管理【目次】へ戻る

コメント

タイトルとURLをコピーしました