[[20180302162030]] 『加減』(丸美屋) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『加減』(丸美屋)

お世話になります。
エクセルのテンプレート内のリストの作成を使い在庫の管理をしているのですが、数が増えたり減るたびに残数を入力していると在庫が合わなくてなってしまう事が多々あり結局1から数え直す羽目になってしまいます。
その回避をするため在庫管理をテンキーの+−で気軽に打ち込むにはどの様に作成すればいいのでしょうか?

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 何をどのようにしているのかどうしたいのか全くわかりません。(私だけ?)
 もう少し、何をどう入力しているのかとか表のレイアウトとか
 ご説明いただけませんか?
(コナミ) 2018/03/02(金) 16:49

BOXティッシュ 小計
赤       24
青     17
黄       20
緑     20
合計     81

レイアウトはこれで、小計を+−で操作し、合計値を自動で計算する感じです。

(丸美屋) 2018/03/02(金) 17:01


 A       B
1 BOXティッシュ 小計
2 赤       24
3 青       17
4 黄       20
5 緑       20
6 合計      式の入力先

上記として考えてます。

小計に在庫を入荷したのであれば数字のみ
出荷したのであれば-をつけて入力
合計を出したいセルに

=SUM(B2:B5)

を入力。

(くまお) 2018/03/02(金) 17:14


改めて読んだら違うことをお望みだったので
気にしないでください。
しつれいしました。
(くまお) 2018/03/02(金) 17:15

Sub 赤を入荷 ( )
With Range("B3")
.Value = .Value + 1
End With
End sub

Sub 赤を出荷 ( )
With Range("B3")
.Value = .Value - 1
End With
End sub

青、黄、緑のもB3の値をB4、B5、B6、に変更して作って
ボタンを挿入してマクロを登録すればできるかと。

最初に投稿した時の状況で考えているので
配置が違う場合にはそのセルの値を入力してください。
(くまお) 2018/03/02(金) 17:28


Sub 赤を入荷()
[B3] = [B3] + 1
End Sub

Sub 赤を出荷()
[B3] = [B3] + 1
End Sub

ちなみにこちらでも大丈夫です。
(くまお) 2018/03/02(金) 17:32


'B1セルに"小計"の文字
'A列の任意行に"合計"の文字
'シートモジュールに記載(シート見出し右クリック − コードの表示)
Dim data

Private Sub Worksheet_Activate()

    If ActiveCell.EntireColumn.Cells(1).Value Like "*小計*" Then data = Val(ActiveCell.Value)
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.EntireColumn.Cells(1).Value Like "*小計*" Then data = Val(Target.Value)
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Value = "+" Then
        Application.EnableEvents = False
        Target.Value = data + 1
        Range("A:A").Find("合計", , , xlWhole).Offset(, 1).Value = WorksheetFunction.Sum(Range("B:B")) - Range("A:A").Find("合計", , , xlWhole).Offset(, 1).Value
        Application.EnableEvents = True
    End If
    If Target.Value = "-" Then
        Application.EnableEvents = False
        Target.Value = data - 1
        Range("A:A").Find("合計", , , xlWhole).Offset(, 1).Value = WorksheetFunction.Sum(Range("B:B")) - Range("A:A").Find("合計", , , xlWhole).Offset(, 1).Value
        Application.EnableEvents = True
    End If
End Sub
(mm) 2018/03/02(金) 18:14

 スピンボタン置けばいいのでは?
 その説明では私はこれしか書けません。
(コナミ) 2018/03/02(金) 19:08

>合計値を自動で計算する
これは、SUM関数で簡単にできるはずなので割愛。

>小計を+−で操作し
ちょっと思いつかなかったので、かわりに隣のC列に+,- を入力するたびに加減するようにするならこんな感じでいけるとおもいます。

Private Sub Worksheet_Change(ByVal Target As Range)

   If Intersect(Columns("C"), Target) Is Nothing Then Exit Sub
   If Target.Count > 1 Then Exit Sub

   Select Case Target
      Case Is = "+"
         Target.Offset(, -1).Value = Target.Offset(, -1).Value + 1
         Target.Value = ""
      Case Is = "-"
         Target.Offset(, -1).Value = Target.Offset(, -1).Value - 1
         Target.Value = ""
      Case Else

   End Select

End Sub
(もこな2) 2018/03/04(日) 06:54


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.