私はこのようなシートを持っていますが、もっと複雑です:
Product count real count
Rake Complete -1 n/a
Rake Head 2 =B3+B2
Rake Handle 2 =B4+B2
Bike Complete -5 n/a
Bike Handle 10 =B6+B5
Bike Wheel 25 =B7+B5+B5
Bike Frame 90 =B8+B5+B6
数式が機能すると、次のようになります。
Product count real count
Rake Complete -1 n/a
Rake Head 2 1
Rake Handle 2 1
Bike Complete -5 n/a
Bike Handle 10 5
Bike Wheel 25 15
Bike Frame 90 85
次のように、列 B の値を列 C の値にリセットする VBA コードのヘルプをいただければ幸いです。
Product count real count
Rake Complete 0 n/a
Rake Head 1 1
Rake Handle 1 1
Bike Complete 0 n/a
Bike Handle 5 5
Bike Wheel 15 15
Bike Frame 85 85
列の値を加算および減算する他のシートにまとめた他の VBA コードがありcount
ます。変数に基づくのではなく、この作業中の在庫をできるだけ正確に保つために、列 B を毎日リセットしたいと思います。そうすれば、カウントが少しずれていても、すべてをリセットする必要はありません。
私はしばらくこれに取り組んできましたが、私が試して失敗した5つの方法よりも良い方法があることを知っています. ただし、列ベースである必要があります。私のシートには、これを適用する必要がある 465 行があり、ビジネスが成長するにつれて、このシートの行も増加します。
私に最も近いコードはこれです:
Sub CommandButton1_Click()
Columns("C:C").Select
Selection.Copy
Columns("B:B").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Dim r As Long
For r = Cells(Rows.Count, 2).End(xlUp).Row To 1 Step -1
If Cells(r, 2) = "n/a" Then Cells(r, 2).value = 0
Next r
End Sub
私が抱えている主な問題は、コードを実行するたびに、他の製品の数が増えることです。自転車のフレームを見ると、バラ売りもできますが、そうすると自転車のハンドルも付いてきます。このコードがリセットされると、常に自転車のハンドルが追加されます。変更せずに 10 回実行すると、在庫が大きくなり、Excel が喜んで表示します。これを修正する方法、または別の方法のアイデアをまとめて修正する方法はありますか?