Excel2016,2013マクロ 41回
オーダーが入った時に、在庫を調べて、受注表に記入するという流れを想定したフォームです。
受注数と受注日以外は、リストを選択することで自動的に連動して表示されます。
この記事では、以下の内容について解説しています。
スピンボタンコントロールは、UserFormに配置することができるアクティブXコントロールで、主に数値の増減や日付の変更などに利用されます。
スピンボタンは、上下の矢印ボタンが配置されたコントロールで、クリックすることで数値や日付を増減させることができます。




SpinUp(スピンアップ):スピンボタンの上矢印がクリックされたときに発生するイベントです。
このイベント内
にコードを記述することで、値の増加処理を実行できます。
SpinDown(スピンダウン):スピンボタンの下矢印がクリックされたときに発生するイベントです。
このイベント
内にコードを記述することで、値の減少処理を実行できます。





今回は、表にデータが1行しかない場合(毎月新規に表を作成する場合など)を想定して、 Selection.End(xlUp).Offset(1, 0).Selectとしています。
フォームのテータをシートに転記した後、ListBox1を非選択の状態にもどし、TextBox3、TextBox4を空欄にしています。これにより、続けて在庫を確認することができるようになります。

Private Sub CommandButton1_Click()
Me.Hide
Sheet1.Range("B" & Rows.Count).Select '
Selection.End(xlUp).Offset(1, 0).Select '
ActiveCell.Value = TextBox4.Value
ActiveCell.NumberFormatLocal = "yyyy/mm/dd"
ActiveCell.Offset(0, 1).Value = ListBox1.Value
ActiveCell.Offset(0, 2).Value = ListBox2.Value
ActiveCell.Offset(0, 3).Value = TextBox3.Value
ActiveCell.Offset(0, 3).NumberFormatLocal = "G/標準"
ActiveCell.Offset(0, 4).Value = TextBox2.Value
Me.ListBox1.ListIndex = -1 '
TextBox3.Value = ""
TextBox4.Value = ""
Me.Show
End Sub

