VBAでデータの加算をしようと思っています。
行いたい内容は以下の通りです。添付画像をご覧の上お読みください。
【やりたいこと】
Sheet1に生データがあります。購入した品物、日付、個数
Sheet2は 生データの内、購入個数を確認したい品物リストです。
Sheet2には任意の品物の購入個数の 「総和」 が入力されるようにしたいです。
【困っていること】
購入個数の総和をもとめるプログラムがわかりません。
以下にコード示します。「↓」の部分が相談したいポイントです。
VBA
1コード 2Dim i As Long 3Dim k As Long 4 5Dim LastRowSheet1 As Long 'Sheet1最終行 6Dim LastRowSheet2 As Long 'Sheet2最終行 7 8Dim NameSheet1 As String '品物名称Sheet1 9Dim NameSheet2 As String '品物名称Sheet2 10 11 12 13Worksheets("Sheet1").Select 14LastRowSheet1 = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row '最終行 15 16Worksheets("Sheet2").Select 17LastRowSheet2 = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row '最終行 18 19 20 21For i = 2 To LastRowSheet1 22 Worksheets("Sheet1").Select 23 NameSheet1 = Worksheets("Sheet1").Cells(i, 2).Value 24 25 For k = 2 To LastRowSheet2 26 Worksheets("Sheet2").Select 27 NameSheet2 = Worksheets("Sheet2").Cells(k, 1).Value 28 29 If NameSheet1 = NameSheet2 Then 30 Dim KOSUU As Variant 31 Worksheets("Sheet1").Select 32 KOSUU = Worksheets("Sheet1").Cells(i, 3).Value 33 Worksheets("Sheet2").Select 34 '↓↓↓↓↓↓↓↓↓↓↓↓↓この部分がわかりません↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 35 Worksheets("Sheet2").Cells(k, 2).Value = KOSUU '質問内容→ この部分を総和の値にしたいです 36 End If 37 38 Next k 39Next i 40 41 42 43
初歩的なことで申し訳ありませんが、ご教示お願い致します。
他の方の回答でも書かれているように、SUMIF関数で済むように思うのですが、
VBAで作らなければいけない理由があるのでしょうか。
回答4件
あなたの回答
tips
プレビュー